高并发的原则
一、拆分:应用拆分,
系统维度:根据功能业务拆分模块。
功能维度:针对一个系统中的功能再次拆分。
读写维度:根据读写比 商品读服务商品写服务。
模块维度:基于代码基础,特征; 例如MVC三次架构
APO维度:业务横向切面,意思就把公共的部分拆分处来。面向切面编程。例如:权限,日志,配置等
二、服务化,无状态
服务化:不是子系统,也不是多个独立系统。
服务化是独立的业务功能内聚系统,对外提供统一标准化接口,不同服务之间松耦合
服务和子系统:
服务只能依赖整个项目,子系统可以单独部署。
三、无状态
一个服务挂掉了不影响其他服务
四、服务通信
PRC :TCP UDP HTTP,可以用rpc调用某一个类中的某一个方法
restful:接口调用 对外提供服务
消息队列:异步调用主要是解耦不需要同步业务,流量削峰
如何选择:对外用restful 实时性选择rpc 不需要实时性选择队列
五、数据异构
通过异构表关联不同业务的数据
六、数据闭环
例如数据详情,可将多个模块的数据打包在一起缓存起来如mongdb
七、缓存
客户端:如手机缓存信息
客户端网络
广域网:CDN
源站及源站网络
八、并发化
本文由:xiaoshu168.com 作者:xiaoshu发表,转载请注明来源!