架构实战训练营模块六作业
【背景】
假设你现在是一个创业公司的 CTO,开发团队大约 30 人左右,包括 5 个前端和 25 个后端,后端开发人员全部都是 Java,现在你们准备从 0 开始做一个小程序电商业务,请你设计微服务拆分的架构以及微服务基础设施选型。
【作业要求】
需要明确服务拆分思路,并且将拆分后的系统架构图画出来;
需要明确微服务基础设施选型思路,并选择一个微服务框架。
【提示】
需要应用三个火枪手原则;
需要选择拆分方式;
需要选择微服务框架的模式。
1 系统拆分
因为是从零开始做一个小程序的电商业务,所以采用按业务拆分微服务搭建完善基础设施,按照微服务基础设施优先级逐步落地。
25 个后端 按照三个火枪手原则,3 个人为一组,一共六个微服务,按照一对一的分配,一共需要 3*6=18(人)。剩下 7 个人,可以负责对微服务进行整合,也可以做服务框架治理以及新的业务服务。
基础设施选型
基础设施选型思路,因为团队技术栈统一语言 Java,所以选用嵌入式 SDK 框架模式,使用 Dubbo 提供 RPC 调用,是比较合适的框架,使用 zookeeper 作为服务注册中心、配置中心。而不必考虑反向代理或者网络代理。有条件的,还可以自研类似 Dubbo 的框架,便于加入自己需要的特性以及将来对框架的性能扩展的需要。
评论