week6 作业 - 拆分电商系统为微服务
拆分电商系统为微服务
【背景】
假设你现在是一个创业公司的 CTO, 开发团队大约 30 人左右,包括 5 个前端和 25 个后端,后端开发人员全部都是 Java, 现在你们准备从 0 开始做一个小程序电商业务,请你设计微服务拆分的架构以及微服务基础设施选型。
【作业要求】
需要明确服务拆分思路,并且将拆分后的系统架构图画出来;
需要明确微服务基础设施选型思路,并选择一个微服务框架;
用 1~2 页 PPT 即可。
【提示】
需要应用三个火枪手原则
需要选择拆分方式;
需要选择微服务框架的模式。
1 背景
目前团队要从 0 到 1 做一个小程序电商业务,开发团队有 30 人,包括 5 个前端和 25 个后端,且后端开发都是 java 栈;我们希望从应用产品设计的开始就采用微服务架构方式进行开发, 所以本次内容主要围绕着对业务功能,服务拆分和框架选型进行。
2 业务主要功能
目前对于后台我们主要划分成了八个功能模块:
3 应用微服务拆分
3.1 微服务拆分颗粒度
服务的拆分颗粒度主要按照三个火枪手原则进行拆分:服务端开发人数/3
人员的划分以 1 个大手 带 2 个小手 的方式划分。
3.2 微服务拆分方案
服务颗粒度已经确定,我们将采用功能一对一的方式进行微服务的划分与开发。
4 应用微服务框架选型
因为整个后端的开发人员都是 java 语言栈,并不涉及 RPC 协议交互,所以我们选择 SpringCloud 作为微服务开发的框架。其包含目前我们对微服务基础设施所需要的一切资源。
我们整个的构建过程会从如下四个方面进行,优先级如下:
评论