单机痛点

1.团队规模变大,功能重复建设
2.功能严重耦合,互相影响
3.代码频繁冲突,消耗研发精力
4.打包部署时间久而且经常打包失败
5.业务流量暴增,系统支撑不了

拆分微服务好处

1.复杂业务简单化
2.提升系统并发能力
3.突破单数据库性能瓶颈
4.提高研发人员研发效率,提高交付能力
5.减少发版时间,功能快速验证上线

微服务拆分原则

1.考虑团队人员结构
2.服务粒度适中(先粗粒度后细粒度,先少后多)
3.单一职责原则(高内聚和低耦合)
4.服务自治原则
5.服务之间轻量级通讯协议
6.服务拆分与日常有任务需求并行进行,考虑迁移方案与回滚方案
7.服务拆分避免循环依赖
8.分迭代逐步拆分、持续演进