我知道对此已经有一个很好的问题,但它并没有真正回答我正在寻找的问题。
据我了解:
1.两者都用作应用程序之间的中心焦点
2.两者都可以在服务/应用程序之间使用路由/中介/转换等
但我真正能看到的唯一区别是,中心辐射型通常有许多不同的格式进入中心(SOAP/REST/XML/JSON...),而 ESB 通常具有标准格式(通常只是 SOAP。)
我还一直读到,与 ESB 相比,中心辐射型引入了单点故障。那么物理部署有什么不同吗?一个集线器拥有所有可能的端点,并且 ESB 具有跨多个集线器部署的端点?那么 ESB 只是多个集线器(需要更好的词语)?
谁能帮我解决这个问题吗?
这里没有确切的答案,因为您可以将 ESB 作为一种特定的设计模式来谈论,或者作为关于软件集成工具和 SOA 的演变的论述。
ESB 作为一种设计模式意味着您可以使用客户端可以轻松插入和拔出的总线来管理不同服务之间的通信。这通常是通过强制他们使用标准数据格式和协议来完成的,而使用 Hub and Spoke,您可以为每个客户端使用自定义连接器和数据转换。这限制了运行多个集成时可能遇到的问题数量,但 ESB 中仍然可能存在单点故障。
ESB 作为一种话语(或营销术语)是一个更复杂的问题,人们争论什么是“真正的 ESB”。有人说您需要一个模块化架构,您可以在其中选择部署哪些组件,或者您需要能够将组件分布在不同的机器上以允许扩展和容错。在极端的定义中,您甚至需要将数据转换器部署为分布式服务。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)