架构实战营 - 模块六作业
1. 拆分电商系统为微服务
背景
假设你现在是一个创业公司的 CTO,开发团队大约 30 人左右,包括 5 个前端和 25 个后端,后端开发人员 全部都是 Java,现在你们准备从 0 开始做一个小程序电商业务,请你设计微服务拆分的架构以及微服务 基础设施选型。
作业要求
1. 需要明确服务拆分思路,并且将拆分后的系统架构图画出来;
2. 需要明确微服务基础设施选型思路,并选择一个微服务框架;
3. 用 1~2 页 PPT 即可。
提示
1. 需要应用三个火枪手原则;
2. 需要选择拆分方式;
3. 需要选择微服务框架的模式。
2. 拆分過程
5 个前端和 25 个后端, 按业务拆分
应用三个火枪手原则:
25 个后端 / 3 ~= 8, 微服务不應超出 8 個
参考现有电商设计:
考虑电商业务应有下面功能模块
微服务设计, 增加 BFF 与基础设施模块
, 超出 8 个,
合併功能
合併模块, 将库存合併到商品模块
最终设计:
小程序前端: 5 个前端
基础设施: 4 个后端
其馀微服务各 3 个后端
3. 微服务基础设施选型
都是 java ,
使用嵌入 SDK 最合适簡單原則,
框架选型使用 spring cloud
评论