cloudhub上的连接超时错误:Mule版本:4.2.2

问题描述

我正在尝试访问一个https客户端api,该api在邮递员(在800ms内给出响应)和本地ule子流中都可以正常工作,但是在cloudhub上却不能正常工作。我收到“连接超时”错误。它尝试连接30秒钟(根据日志),然后显示HTTP:CONNECTIVITY错误

Failed: Connect timeout.
errorType=HTTP:CONNECTIVITY
cause=org.mule.extension.http.api.error.HttpRequestFailedException

我设置的响应超时为5分钟。 该流程之前在cloudhub上部署时运行良好。几天前我没有对代码进行任何更改,但该流程停止了工作。我无法调试此问题,因为它在本地env上不可重现(它工作得很好)。任何帮助将不胜感激。

解决方法

如果正常运行,则可能是另一端发生了网络更改,阻止了从CloudHub应用程序的访问。您没有共享URL,因此不清楚它是内部主机还是公共主机。我们也不知道服务器端是否存在某种白名单。

您可以使用Network Tools应用程序测试与HTTP主机和端口的连接,以查看它是否可以从您的CloudHub环境访问。

,

HTTP超时提供了4种不同类型的常规超时。每个都有自己的差异。

  • 连接空闲超时
  • 响应超时
  • 最大空闲超时时间
  • 查询或事务超时(适用于数据库连接器)

自从你得到

HTTP:连接错误。 应用5分钟的响应超时没有帮助。 只有在建立连接握手之后,才应该担心响应超时(意味着响应时间更长)。

您的问题出在连接本身。

尝试解决此问题的唯一可能方法是通过Applying a Connection Idle TimeoutReconnection Strategy并留有一些频率间隙。

由于您对本地测试非常确定。我建议您执行以下两个步骤:

1. Try using the same HTTP connector configuration in a separate new mule APP. Try with a simple listener and the failing requestor. Also add one more freely available online REST services into your code in other extra flow. Now try to test both. See which one is working and which is failing.

这将告诉您这是一个真正的HTTP CONNECTIVITY问题还是其他与某些Mule错误相关的问题。

 2. Check your configurations once again and make sure if your hitting the same endpoint in the cloudhub version.

最后,希望您不要在本地版本中不小心放入任何代理配置文件。