1

我想为 HTTP 调用设置重试策略,以防偶尔出现网络故障,所以我配置如下:

    <http:connector name="HTTP_Retry" cookieSpec="netscape" validateConnections="true" sendBufferSize="0" receiveBufferSize="0" receiveBacklog="0" clientSoTimeout="10000" serverSoTimeout="10000" socketSoLinger="0" doc:name="HTTP\HTTPS">
      <reconnect frequency="1000" count="3"/>
</http:connector>
....
<http:outbound-endpoint address="http://localhost:18081/mule/TheCreditAgencyService" doc:name="HTTP" exchange-pattern="request-response" method="POST" connector-ref="HTTP_Retry"/>

但是没有应用重试策略,即使我配置了客户重试策略,我调试了应用程序,设置了断点,程序没有运行到我的客户类中。

我阅读了文档,但只有 JMS 的示例。

有小费吗?我错过了配置吗?

提前致谢!

4

1 回答 1

3

名称错误的重试策略负责重新连接连接器,而不是在发生故障时重新发送消息。

在断开连接的连接器(如 HTTP 连接器)上,重试策略不起作用。它在 JMS 之类的连接器上很有用,在这种连接器中,与代理保持永久连接,在发生故障时需要重新连接。

您所追求的是直到成功的路由消息处理器

于 2013-08-06T16:11:13.483 回答