架构 -- 模块六作业
题目背景:
开发团队大约 30 人左右,包括 5 个前端和 25 个后端,后端开发人员
全部都是 Java,现在你们准备从 0 开始做一个小程序电商业务,请你设计微服务拆分的架构以及微服务
基础设施选型。
题目提示:
需要应用三个火枪手原则;
需要选择拆分方式;
需要选择微服务框架的模式。
作业要求:
明确思路并画出拆分架构图
微服务基础设施选型思路,选择一个微服务框架
服务拆分:
由于有 25 个 java 开发,根据三个火枪手原则,拆成 8 个微服务比较合适。由于是从 0 开始进行开发,则选择业务拆分的方式进行拆分。由于没有业务专家,团队人数难以完整参考现有的电商案例,因此业务边界选择先粗分再演进的方式。
所以依托现有资源参考已有的电商,首先保证前端有用户使用的小程序商城和运营人员使用的管理系统。按照一般商城的使用逻辑拆分为 用户服务、店铺服务、商品服务、购物车服务、订单服务、消息中心、优惠活动中心和结算中心。
基础设施选型:
由于开发人数不多且统一语言为 java,且新业务在没有进行市场验证前不宜投入过多资源,因此选择结构和部署都更加简单的嵌入 SDK 的方式。可选的架构在 dubbo 和 springcloud 中,但是考虑到新业务团队人数不多,很难进行一些基础服务的开发,功能更为全面 springcload 是个更好的选择。
评论