服务分为系统服务同用户服务两种
水平扩展是基于系统服务,主要解决数据量,网络IO问题。而拆分方式又有几种方案,按数据跟业务情况来做决策
1.每个服务独立存储(图1):每个服务只负责一个或多个领域实体存储,A服务不能直接修改B服务的存储,会造成数据不同步
2.每个服务区域存储(图2):每个服务按不同区域存储,可根据业务按地区或平台存储。如广东地区的用户数据只能存放在广州机房上,A平台用户数据只能存放在A机器上,以至为例B。。。。
3.特殊服务独立存储(图3):这种服务比较重要,如金额交易之类的
4.混合
图1:
图2:
图3:
参考资料:https://www.ibm.com/developerworks/cn/java/j-cn-java-and-microservice-4/index.html