内容来自《微服务设计原理与架构》
在微服务架构中,我们认为服务是业务能力的代表,需要围绕业务进行组织。服务拆分的关键在于正确理解业务,识别单体内部的业务领域及其边界,并按边界进行拆分。本节将从服务拆分的维度和策略出发,讨论服务之间的依赖关系和数据管理。
关于服务拆分的切入点,我们先从 Martin L.Abbott 所著《架构即未来》中介绍的 AKF扩展立方体[9]出发寻找一些灵感,然后给出本书中关于服务拆分的两大维度。
AKF扩展立方体(Scalability Cube)是一种可扩展模型,这个立方体
有三个轴线,每个轴线描述扩展性的一个维度(见图3-2),分别如下。
X轴
代表无差别的克隆服务和数据,工作可以很均匀地分散在不同的服务实例上。
Y轴
关注应用中职责的划分,如数据类型、交易执行类型的划分。
Z轴
关注服务和数据的优先级划分,如分地域划分。