mulesoft(ESB)与hub和spoke有何不同?

时间:2016-07-28 07:11:59

标签: architecture esb eai

我的初衷是了解ESB架构和Hub-Spoke架构之间的区别。我担心,无论给出多少答案,我都无法理解它。

以下是我的理解 - ESB不是产品,而是架构拓扑 - ESB促进松散耦合的集成并减少依赖性 - Mulesoft ESB和市场上的其他ESB提供的不仅仅是ESB特性 - 消息路由/ Web服务支持

我想要了解的一点是 - 它与HUB-SPOKE架构有何不同?

  • ESB表示,分布式消息传递架构使其可以减少依赖性并减少停机时间。但是怎么样?是因为'适配器'/集成层在源和目标应用程序中?如果是这样,为什么Mulesoft或市场上的任何ESB都提出他们提供了大量的适配器?

  • 如果是架构设计问题,这是否意味着,我可以在应用程序端使用适配器并使用ESB进行路由?并且没有使用MUlesoft提供的适配器?

  • 更重要的是,它与Hub有什么不同?从技术上讲,为什么说'HUB-SPOKE'不允许分布式消息传递架构?

非常感谢任何帮助。提前谢谢。

2 个答案:

答案 0 :(得分:1)

ESB是面向消息的中间件(MOM)以及典型应用程序容器提供的服务。

因此,ESB可以帮助不同的企业组件无缝集成,避免点对点集成。服务生产者/消费者(组件)一旦与ESB集成,它就可以与已经集成的任何组件进行通信,从而降低点对点集成成本。

  

ESB表示,分布式消息传递架构使其可以减少依赖性并减少停机时间。但是怎么样?是因为'适配器'/集成层在源和目标应用程序中?

ESB如何实现

  1. 与之相关的所有组件都应该进行讨论 通用数据格式(消息)

  2. 基于邮件标题的路由和过滤

  3. 支持多种沟通/整合模式

    a)同步与异步
    b)仅请求(有/无Ack)
    c)回应请求

  4. ESB提供哪些附加服务?

    1. 应用程序部署服务
    2. 线程池
    3. 消息队列
    4. 监控和统计
    5. 群集支持
    6. 高可用性支持
    7.   

      为什么Mulesoft或市场上的任何ESB都建议他们提供   大量的适配器?

      DB服务,文件服务,规则引擎,邮件服务,FTP服务等常用组件已经集成到ESB /或已经编写了适配器,因此一旦您的组件与ESB集成,它就可以轻松地使用这些常用服务。没有配置

        

      如果它是架构设计的问题,这是否意味着,我可以在应用程序端使用适配器并使用ESB进行路由?并且没有使用MUlesoft提供的适配器?

      ESB不仅适用于路由,而且是最重要的功能之一。您可能不会使用ESB提供程序的所有预先提供的组件。您还可以将服务作为ESB组件发布,供社区使用。

        

      更重要的是,它与Hub有什么不同?从技术上讲,为什么说'HUB-SPOKE'不允许分布式消息传递架构?

      如果体系结构实现提供ESB的所有功能和服务,则没有区别。 但有人说,通过ESB,我们可以在不同的机器上分配组件,以实现扩展和容错。

答案 1 :(得分:0)

集线器/分支和总线拓扑之间的主要区别在于,对于总线体系结构,执行消息转换和路由的集成引擎会分发到应用程序适配器,而不是将其集中到单个“集线器”