写点什么

拆分电商系统为微服务

用户头像
9527
关注
发布于: 1 小时前

作业要求

【背景】

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

【作业要求】

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

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

【提示】

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

  • 需要选择拆分方式;

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


拆分思路

根据课件里老师提供的拆分思路,我们有如下的选择


基于作业的要求,由于需求背景为从零开始来构建业务系统(电商小程序),所以推荐采用第一种微服务实施方式,具体如下:

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

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

  • 落地方式:一步到位


系统架构

架构模块

我们首先把电商系统划分以下不同的模块

  • 商品模块

  • 购物车模块

  • 支付/订单模块

  • 促销模块

  • 库存模块

  • 用户/管理模块

  • 商铺模块

  • 财务模块

团队划分

因为是 25 人的后端团队

  • 按照“三个火枪手”的服务拆分原则

  • 采用业务模块与微服务“一对一”拆分粒度


微服务划分

结合团队人数和模块划分,我们可以拆分为以下微服务

  • 商品微服务

  • 购物车微服务

  • 销售微服务

  • 促销微服务

  • 库存微服务

  • 用户微服务

  • 商铺微服务

  • 财务微服务


微服务

由于开发人员全部都是 Java 且小程序对接不需要 RPC,故使用 Spring Cloud 作为微服务框架。最后的微服务框架如下


发布于: 1 小时前阅读数: 2
用户头像

9527

关注

还未添加个人签名 2020.04.22 加入

还未添加个人简介

评论

发布
暂无评论
拆分电商系统为微服务