架构师实战营 模块六作业(拆分电商系统为微服务)
背景
假设你现在是一个创业公司的 CTO,开发团队大约 30 人左右,包括 5 个前端和 25 个后端,后端开发人员全部都是 Java,现在你们准备从 0 开始做一个小程序电商业务,请你设计微服务拆分的架构以及微服务基础设施选型。
作业要求
1.需要明确服务拆分思路,并且将拆分后的系统架构图画出来;2.需要明确微服务基础设施选型思路,并选择一个微服务框架;3.用 1~2 页 PPT 即可。
提示
1.需要应用三个火枪手原则;2.需要选择拆分方式;3.需要选择微服务框架的模式。
微服务实施方式
三个火枪手原则,每个微服务 1 个老人,带 2 个新人。后端共 25 人,可以拆分出大概 8 个微服务。
微服务拆分方式采用按照业务的拆分方式,而不是按质量拆分的方式。因为这是一个小程序电商系统,比较简单,所以按业务拆分即可。
微服务框架模式采用一步到位的方式,不需要后续的演进,在服务搭建的时候,就需要考虑到微服务基础设施的搭建。
微服务拆分
微服务基础设施选型
因为是初创公司,所以采用嵌入式的 SDK 模式。可以参考 mall-swarm 开源微服务商城系统,天然支持高性能和高可用,而且没有额外的维护工作。采用 Spring Cloud Hoxton & Alibaba,以及 Spring Boot 2.3 等。在电商业务的基础上,集成了注册中心、配置中心、监控中心、网关等系统功能。
评论