And*_*ndy 6 architecture esb microservices
研究应用程序架构仍然很新,并且在一本关于微服务的书中遇到了一些问题.在我的阅读中,我遇到了ESB(企业服务总线)的旧概念及其在协调新服务和遗留应用程序之间的消息方面的作用.ESB被吹捧为解决点对点集成问题的解决方案.微服务似乎是新公司采用的方法,作为创建敏捷,可扩展和弹性应用程序的事实标准.但是,不是使用点对点集成的微服务吗?从微服务构建的应用程序中的每个节点都直接与其他节点通信,对吧?我觉得我正在连接一些不应该连接的点.任何帮助非常感谢,提前感谢.
小智 2
微服务不一定严格依赖点对点集成。
与直接通信相关的问题通常使用消息代理在微服务架构中进行管理。如果通信可以异步完成(“即发即忘”),那么即使接收方出现故障,发送消息的应用程序也不会变得无法操作。当接收服务恢复时,消息仍然存在。
如果微服务通过 REST 进行集成,调用者确实需要知道在其他服务没有响应时如何反应。由于当您跨系统保存数据(即分布式事务)时,这会变得很棘手,因此我喜欢仅将 REST 用于数据检索 API。并根据消息进行所有保存。
需要注意的是,ESB 不仅仅具有消息传递功能。在此处的答案中查看更多相关内容。
| 归档时间: |
|
| 查看次数: |
1443 次 |
| 最近记录: |