Mule 4 中共享负载均衡器 URL 和外部 IP 地址 URL 之间的区别

问题描述

如果这是一个基本/简单的问题,我很抱歉:-)。我仍在努力了解 Mule 架构。

用例:

我有一个 mule 应用程序部署到 cloudhub,有 2 个工作人员。使用共享负载均衡器 URL(即..cloudhub.io)从第三方调用此 API。但是,有些事务需要超过 5 分钟,因此在第三方层他们收到 504 错误响应,尽管事务在 mule 层成功完成。

我在其中一篇 mule 博客中读到共享负载均衡器的超时时间为 5 分钟,并建议使用外部 IP 地址(即 mule-worker-..cloudhub.io: ).

我的问题:

  1. 有没有办法增加共享负载平衡器 URL 响应超时时间?
  2. 如果我使用外部 IP 地址,它会对共享平衡器 URL 产生任何影响吗?有什么优点和缺点吗?例如,如果 API 部署在 2 个工作人员上,使用外部 IP 地址 URL 是否能够在工作人员之间分配负载

提前致谢。

解决方法

  1. 没有办法增加共享负载均衡器的响应超时。它是固定的。

  2. 为您的应用程序使用外部 DNS 名称(或外部 IP)时,您将直接连接到应用程序,完全绕过负载平衡器。您将失去负载平衡器的所有功能或与之相关的所有功能,例如负载平衡和零停机部署。

当部署到多个 worker 时,DNS 名称将返回所有 IP。您的客户端可能能够以循环方式使用 IP 集。虽然它与负载均衡不同,但它是一种非常轻的负载分配策略。请注意,您的客户端 DNS 解析应避免缓存 DNS 解析。

请注意,如果您订阅了专用负载均衡器,则可以set a custom response timeout订阅它。