微服务拆分
对在线教室业务来说,包括用户服务、在线教室服务、行为牌服务、回放服务、课件服务、信令服务、监课服务、在线教室反馈等等
电子商务:用户服务User、商品服务Info、交易平台Trade、搜索服务Search、推荐引擎等
1、垂直拆分
拆不拆分主要看业务是物理关系还是逻辑关系 用户与商品是业务关系、商品与交易是业务关系等
用户与在线教室是业务关系、商品与交易是业务关系等
物理关系就是在同一个数据库,一般一个微服务都是独立部署、单进程、独立数据库
拆分粒度问题:假如用户服务有注册、登陆、查询等功能,
注册是写服务、登陆和查询都是读服务。
读写比例是1:10 ,有的是1:1万 1:10万 比如腾讯登陆、读写比能达到1:10万以上的是博客系统,比如简书的文章阅读人数几十万。
读写比超过1:10,或者QPS达到1000以上 可以考虑拆分注册服务、登陆查询服务
登陆查询会影响到写服务注册。
拆分到API层 应该是最小粒度的拆分了。
商品的发布和查询服务,当商品的访问量比较大的时候,也是要考虑去拆分。
光垂直拆分是不够的,比如搜索访问DB或者Cache,当访问量大的时候就需要水平拆分
网友评论