写点什么

架构训练营 - 模块 6 作业

作者:焦龙
  • 2021 年 12 月 11 日
  • 本文字数:661 字

    阅读完需:约 2 分钟

拆分电商系统为微服务

【背景】

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


【作业要求】

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

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

3. 用 1~2 页 PPT 即可。


【提示】

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

2. 需要选择拆分方式;

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


整体思路

由于是从零开始构建一个服务,所以采用按 业务拆分 微服务。创业公司基础设施不完善,需要按照微服务基础设施优先级 逐步 落地。服务拆分落地方式采用 一步到位 的方式。

由于后端开发技术栈统一为 Java 开发语言,所以可以采用 嵌入SDK 的方式,这样无需额外维护工作,并且天然支持高性能、高可用。微服务框架可以根据团队的熟悉程度,选择 Spring Cloud或者是 Dubbo

根据 3 个火枪手的指导原则,后端开发人员一共有 25 个人,所以后端模块可以拆分为8个,实际拆分数量可以结合团队的工作能力再进行调整。

系统架构图

通常情况下电商服务的性能要求并不高,但是在热卖商品抢购的时候,则需要很高的性能,所以将促销服务划分为单独的微服务,微服务的架构图如下所示:


各个微服务的功能为:

  • 会员服务:维护用户账号信息,同时负责账号的登陆管理。

  • 商品服务:维护商品信息,负责商品的展示和查询

  • 库存服务:维护商品库存,同时跟踪物流进度。

  • 订单服务:维护订单信息

  • 支付服务:对个各个支付平台,同时负责财务结算。

  • 促销服务:负责抢购活动


用户头像

焦龙

关注

还未添加个人签名 2017.12.20 加入

还未添加个人简介

评论

发布
暂无评论
架构训练营 - 模块 6 作业