微服务架构:原理、优势与挑战
1. 异步消息传递
异步消息传递是指系统不会立即期望从服务获得及时响应,并且系统可以在不阻塞该调用的情况下继续处理。将此消息传递概念融入应用程序后,用户在系统与销售数据库(Sales DB)和/或库存数据库(Inventory DB)服务进行交互并向各自数据库提取或推送数据时就能得到响应。用户(通过用户界面)对各个服务的调用不会阻止来自相同或不同用户的新调用。
消息格式方面,常见的有 JSON、XML 等,它们在基于 HTTP 的 API 风格资源中都适用。此外,若有需要,也可使用二进制消息格式,可根据自身偏好选择。
2. 微服务架构的工作原理
微服务架构是一种将应用程序构建为一组松散耦合服务的架构风格。这些服务可以相互通信,也可以彼此独立。基于微服务的应用程序的整体工作架构取决于开发应用程序所使用的各种模式,例如后端或前端模式。
微服务架构具有以下优点:
- 遵循 SOLID 原则,以面向对象编程(OOP)为主流,是向其他或外部组件暴露功能的最佳方式,允许任何编程语言使用该功能,而无需遵循特定的用户界面(如 Web 服务、API、REST 服务等)。
- 整个系统以非互连或非相互依赖的协作方式工作。
- 每个组件仅负责自身的功能,实现了代码的分离和复用。
3. 微服务的优势
相较于面向服务架构(SOA)和单体架构,微服务具有以下显著优势:
|优势|描述|
| ---- | ---- |
|成本效益高的扩展|无需大量投资即可使整个应用程序具有可扩展性。例如在购物车应用中,可对产品搜索模块和订单处理模块进行
超级会员免费看
订阅专栏 解锁全文
171万+

被折叠的 条评论
为什么被折叠?



