架构模块六 - 作业
题目
一、微服务拆分思路
1、因为是从 0 开始做一个电商业务,想从一开始就设计使用微服务架构,也就是目前没有质量分析数据,所以更适合按业务拆分微服务。
2、根据三个火枪手原则,后端开发总共 25 人,3 个人负责一个微服务,所以可以拆分成 8-9 个微服务。
3、因为电商业务在互联网业界已经有很多成熟的实现,所以根据业界常见业务模式,整理大概有如下几个核心服务:
用户服务、商家服务、商品服务、
订单服务、支付服务、物流服务、
售后服务、运营服务、库存服务
二、基础设施选型
1、所有后端人员都是 java 开发,故选择 java 技术栈的微服务框架
2、因为电商系统是 toC 业务,平时流量就比较高,遇到打折促销或者双十一等狂欢日,流量更会激增,有明显的波峰,高并发场景,所以应该选择性能更好的协议 RPC。
3、因为当前公司规划是要在基于微信小程序上做一个电商系统,因为不能侵入微信的应用,且不能要求微信联动升级,所以嵌入 SDK 模式首先排除,然后通过比较反向代理和网络代理模式,鉴于当前处于创业起步阶段,业务规模不会太大,而且尽可能简单的实现业务,然后进行演进,故微服务框架模式选择反向代理模式。
4、选择 dubbo 微服务框架。
评论