微服务架构设计
微服务架构详解
微服务VS SOA
微服务架构陷阱与挑战
六大陷阱
拆分颗粒度太细
- 服务关系复杂
- 团队效率下降
- 问题定位困难
- 系统性能下降
基础设施不完善
- 无法快速交付
- 服务管理混乱
四大挑战
- 分布式事务
- 全局幂等
- 接口兼容
- 接口循环调用
微服务基础设施选型
核心为服务运行层:服务注册、服务发现、服务路由
- 嵌入SDK式
- 反向代理式
- 网络代理式
微服务拆分技巧
按业务拆分
- 业务边界划分
- 三个火枪手原则
【定义】 平均3个开发人员负责一个微服务。
【剖析】
为什么不是1个?
- 因为没有备份,且一个人思维有局限。
为什么不是2个?
- 因为异常情况下剩余1个,压力会很大;
- 2个人负责维护一个微服务,微服务复杂度偏低。
为什么不是4个或者5个? 如果4个或4个以上,每个人不一定能掌握单个服务所有细节。
【技巧】
- 微服务数量 = 服务端开发人数 /3 ;
- 3 = 1 +2,1个有经验的(P7/P6+),2个普通的(P5/P6);
- 处于维护期的服务,维护人员为2人。
按质量拆分
- 按性能拆分
- 按业务重要程度拆分
- 按可用性拆分
- 按稳定性拆分
中台深入剖析和实现技巧
共享类别
- 无共享,烟囱模型
- Iaas,共享基础设施
- PaaS,共享平台能力
- SaaS,共享软件能力
- 中台,共享业务能力
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 彩虹马的博客!
评论