【问题标题】:How to Load Balance Mule ESB without using Mule Management Console如何在不使用 Mule 管理控制台的情况下平衡 Mule ESB
【发布时间】:2015-01-10 05:07:29
【问题描述】:

我正在使用 Mule ESB,而不是使用 Mule 管理控制台 (MMC)。我只想进行负载平衡,这样如果我将 Mule ESB 作为服务公开,那么在这种情况下,我不想使用负载平衡器来平衡我的 Mule ESB,因为一旦请求到达负载平衡器,它就是单一的故障点,以防万一它关闭。所以我只需要一个用例,如何在不使用 MMC(Mule 管理控制台)的情况下将 Mule 公开为具有优化负载平衡的服务。

【问题讨论】:

    标签: mule cluster-computing mule-cluster


    【解决方案1】:

    为了在多个 Mule 实例上对传入的 HTTP 请求进行负载平衡,您将需要一个外部负载平衡器。 Mule ESB 企业版或 MMC 将帮助您。 您可以使用商业的,例如 F5 BIP-IP,或设置 HAProxy。为避免负载均衡器成为单点故障,您可以设置redundant HAProxy

    对于 JMS,请确保设置一个外部消息代理集群并使用正常的 jms:inbound-endpoint 连接到它,这样 Mule 将充当 competing consumer,您将实现消息的负载平衡。

    我还建议您查看涵盖此内容的 "MuleSoft Blueprint: Load Balancing Mule for Scalability and Availability"。它有点过时了,但其中的大部分信息仍然有效。

    【讨论】:

      【解决方案2】:

      不清楚你使用的是什么交通工具,无论如何你只有有限的选择。

      • 使用 Mule EE 集群功能进行 VM 传输。
      • 使用负载平衡器
      • 使用支持竞争消费者的传输,如 JMS 或 AMQP。

      能否提供更详细的部署说明,以便我提供更准确的信息?

      【讨论】:

      • 我公开了一项休息服务,该服务将数据放入队列中,然后在 JMS 传输的帮助下,骡子使用该队列。所以在这里我不想在 mule 的顶部使用 rest 服务,而不是我想直接使用 JMS、REST 和许多不同的传输公开 Mule,在这种情况下如何在不使用 MMC 的情况下对 mule 进行负载平衡。我希望你的问题很清楚
      • 如果 Mule 正在侦听 JMS 队列并且您的集成没有状态,则您不需要特殊的集群功能,因为 JMS 提供了competing consumers 模式。
      • 简而言之,带有 jms 的入站端点根本不需要负载平衡。无论您使用哪个版本的 Mule,Http 端点都需要负载均衡器。
      猜你喜欢
      • 2013-08-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多