架构实战营模块六作业
【背景】
假设你现在是一个创业公司的 CTO,开发团队大约 30 人左右,包括 5 个前端和 25 个后端,后端开发人员全部都是 Java,现在你们准备从 0 开始做一个小程序电商业务,请你设计微服务拆分的架构以及微服务基础设施选型。
【作业要求】
1. 需要明确服务拆分思路,并且将拆分后的系统架构图画出来;
2. 需要明确微服务基础设施选型思路,并选择一个微服务框架;
3. 用 1~2 页 PPT 即可。
【提示】
1. 需要应用三个火枪手原则;
2. 需要选择拆分方式;
3. 需要选择微服务框架的模式
拆分思路
拆分方式
由于是从 0 开始做的电商系统,则拆分方式应该采用按业务拆分。具体按照业务流程拆分为 5 个微服务,同一个流程在一个微服务内,性能更好。分组情况,前端负责所有业务,后端包括了 8 个小组,每组 3 人,支付业务较复杂,可分配 4 人,如下图所示:
基础设施要求
搭建完善基础设施,按照微服务基础设施优先级逐步落地。
服务拆分落地方式
一步到位。
微服务框架选型
由于项目组后端都是 Java 语言,可选嵌入式 SDK,也天然支持高可用,dubbo 或 spring cloud 是最合适,若团队擅长 RPC,则选 dubbo,否则,选 spring cloud。
评论