写点什么

模块六作业

发布于: 2 小时前

拆分电商系统为微服务

【背景】假设你现在是一个创业公司的 CTO,开发团队大约 30 人左右,包括 5 个前端和 25 个后端,后端开发人员全部都是 Java,现在你们准备从 0 开始做一个小程序电商业务,请你设计微服务拆分的架构以及微服务基础设施选型。

【作业要求】

1. 需要明确服务拆分思路,并且将拆分后的系统架构图画出来;

2. 需要明确微服务基础设施选型思路,并选择一个微服务框架;

3. 用 1~2 页 PPT 即可。

【提示】

1. 需要应用三个火枪手原则;

2. 需要选择拆分方式;

3. 需要选择微服务框架的模式。


思路


由于是从 0 开始做一个小程序电商业务,建议按照以下的方式来搭建:

拆分方式 : 按业务拆分微服务

基础设施要求: 搭建完善基础设施,按照微服务基础设施优先级逐步落地。

服务拆分落地方式:一步到位


根据三个火枪手原则,建议微服务数量 = 25 个后端/3 ~= 8


如果根据以下的业务来拆分:

使用一对一,一开始先拆分成 6 个微服务。


微服务框架

先搭建最重要的服务注册、发现和路由。由于后台人员都是 java, 所以语言上可以采取统一为 Java。由于这个微服务暂时不需要去和外部系统结合,而且是内部自己开发,所以可以选择不需要用到 RPC,因此架构上选择使用嵌入 SDK- Spring cloud.


另外,由于前台人员不多,所以建议使用服务网关,尽量不变动前台接入端,避免前台的多更动。


后期发展

待上线一段时期后,可以依据当时的情况,再根据质量来优化。

基础设施方面,也依据以下的优先级来逐步落地:

1)服务接入层

2)基础设施层

3)技术支撑层



用户头像

还未添加个人签名 2020.10.16 加入

还未添加个人简介

评论

发布
暂无评论
模块六作业