微服务:逻辑边界不是物理边界
原文中文,约1600字,阅读约需4分钟。
📝
内容提要
微服务是具有有边界上下文的松散耦合的面向服务的架构,逻辑边界是跨越前端、后端、数据库和其他基础设施的垂直切片,拥有与其功能相关的一切。逻辑边界可以根据需要以不同方式组合,通过进程内通信进行同步通信。
🎯
关键要点
-
微服务是具有有边界上下文的松散耦合的面向服务的架构。
-
定义边界是微服务的重要部分,逻辑边界与物理边界不同。
-
逻辑边界是跨越前端、后端、数据库和其他基础设施的垂直切片。
-
逻辑边界包含与其功能相关的一切,包括 UI、后端 API 和数据库。
-
逻辑视图和物理视图可以相同,但不必相同,逻辑边界不必独立部署。
-
可以在单个存储库中拥有多个逻辑边界,作为单个部署单元构建。
-
逻辑边界之间的同步通信可以在进程内进行,而不是通过网络调用。
-
一个逻辑边界可以有多个源存储库,构建出不同的部署单元。
-
可以共享基础设施而不共享数据,单个数据库实例可以托管不同模式。
-
事件驱动架构或消息传递可以消除 RPC 或进程内调用,松散耦合逻辑边界。
-
逻辑边界与物理边界的区分开辟了许多可能性。
🏷️