小程序电商微服务拆分和框架选择
背景:团队 5 个前端和 25 个后端工程师,后端开发人员都是 java,从 0 开始启动一个小程序电商平台。
从整体上根据电商业务来拆分微服务,但是个数不能太大,因为从三个火枪手的原则上,我们的理论上支持的服务个数在 8 个左右。每三个开发人员集中开发一个微服务。由于是从 0 开始开发,需要从零开始就开始对业务的进行服务的拆分。
微服务化分
拆分思路:从业务出发,用户需要登录,注册,然后商家也需要注册,登录,商家进行店铺打理,上下架自己的商品,商品的调整和编辑。用户购买商品,下单支付,支付成功,在我的订单里面查看物流信息。商家根据下单进行商品在发货物流。用户收到货物后,平台结算给商家用户支付的钱,然后商家在财务系统里面进行相应的结算。
分为:
用户服务 : 用户登录,注册,会员
订单服务: 下单生成订单
交易服务:支付相关的业务
商家服务:商家,店铺管理相关的业务
物流服务: 对接商品发货的业务
商品服务:商家上下架商品业务
财务服务:商家结算业务
数据分析服务:数据分析服务主要是进行数据的挖掘,分析,报表的展示,统计
按照每 3 个开发人员的分配,那么就能合理的针对每个业务进行合理的人力分配。
框架选择
由于是从 0 开始,那么起点不能太高,那么基础服务也是需要进行选择的,不然开发效率和运维成本都很大。
从服务的注册和发现、容错、路由、网关。
鉴于都是 java 开发,那么最好是选择一个轻量级的服务微服务框架,从选择上选择 Dubbo 和 Spring cloud 都可以。但是针对从生态而言,选择 Spring cloud 的成本相对而言少很多,针对容错和网关 Spring cloud 都有自己的组件进行适配。
版权声明: 本文为 InfoQ 作者【云里雾花】的原创文章。
原文链接:【http://xie.infoq.cn/article/0f056e264b26593149d42c97f】。文章转载请联系作者。
评论