模块六 作业
一、需求
作业:拆分电商系统为微服务
【背景】
假设你现在是一个创业公司的 CTO,开发团队大约 30 人左右,包括 5 个前端和 25 个后端,后端开发人员全 部都是 Java,现在你们准备从 0 开始做一个小程序电商业务,请你设计微服务拆分的架构以及微服务基础 设施选型。
【作业要求】
1. 需要明确服务拆分思路,并且将拆分后的系统架构图画出来;
2. 需要明确微服务基础设施选型思路,并选择一个微服务框架。
【提示】
1. 需要应用三个火枪手原则;
2. 需要选择拆分方式;
3. 需要选择微服务框架的模式
二、微服务基础设施
1.微服务框架:单一 java 语言,团队有一定的规模,首选 spring cloud,其次 dubbo,上手简单。
2.微服务框架模式:嵌入 SDK 方式
3.从 0 开始搭建微服务基础设施,可以从优先级顺序“服务运行层-服务接入层-基础设施层-技术支持层”+开源技术组合完成:
服务注册、发现、路由等:Eureka,与 Spring cloud 集成方便;
服务监控:基础设施+组件用 prometheus,链路跟踪分析用 skywalking;
日志中心:开源 elk;
三、服务拆分
根据团队规模及三个火枪手原则,应该划分为 8 个微服务。电商业务拆分为以下 8 个服务:下单服务、物流服务、优惠服务、会员服务、库存服务、店铺服务、商品服务和财务服务。
评论