关于系统集化的几个问题

  

1组解决什么问题?
1.1容灾问题
核心服务挂掉,数据库主库集中在一个IDC
1.2资源扩展问题
单个IDC扩展有限(如机房满载,带宽不足),跨机房,异地扩展IDC又会出现跨机房造成的延迟问题
数据单主情况,连接数有限,不支持应用无限扩展
1.3大集群拆分问题
分布式集群规模巨大会带来响应的资源扩展,大集群拆分,容灾问题
处于业务角度考虑,会出现容灾,异地需求,底层无法实现
单元化架构应运而生
2集化方案演进

  

2.1同城双活,存储,mq,缓存,定时任务异地主从架构,跨机房写入;一个数据中心异常,可手动切换。
2.2两地三中心
同城双活基础上,在异地部署数据中心,只有灾难级故障才启用(异地冷备)

  
 <代码>冷备不敢切,浪费资源,本质仍然是单点,资源,容灾,扩展问题依然未解决
  
  2.3化流量路由到中心集群还是单元集群
  
  路线的UserId  
  

3集化架构
3.1单元化集群,每个集群都可以独立处理单元内的流量,实现流量拆分,故障隔离
3.2每个单元只存储本集群的数据,后续做数据双向同步,实现容灾切换需求
3.3中心集群:未进行单元化改造的服务,通常为非核心服务
3.4化策略:
中间件:MQ, RPC, KV等
RPC - - -对组服务封闭调用,对非组服务调用中心集群
MQ, KV - - -支持分设置的生产,查询,消费

  
 <代码>数据同步:
  全量数据:对数据量小的数据部署中心集群,其他数据路由到单元集群
  未来规划:对各个单元的数据,需要互相同步,完成容灾需求
  
  集化能力:
  流量调度
  容灾
  
  高效本地化服务:
  根据前端的信息,ip,属地,流量路由到最近的集合
  O2O场景更需要高效的本地化服务能力
  
  集装箱式部署:
  设置一键创建,发布 
  

4集化架构原则是什么:

  

4.1对业务系统透明业务不需要关心设置的规则,部署问题
4.2切分原则:切分由业务层面按需切分,优先选最大的业务维度切分,海量O2O用户按属地就近切分,单套个不局限与单个机房,但集群不宜过大

关于系统集化的几个问题