首页 文章

WSO2 ESB:暂停anonymousendpoint

提问于
浏览
1

我正在研究WSO2 ESB 4.8.1并面临有关暂停匿名 endpoints 的问题 . 场景是:TCP / IP传输接收器(自定义) - >代理 - >调用HTTP endpoints . 在启动运行时,我的自定义传输接收器将使用TCP / IP协议连接到另一台计算机并启动侦听器消息事件 . 当消息事件到来时,传输接收器将消息事件格式化为JSON格式并将其发送到预定义的代理(即使已发生暂停的匿名 endpoints ,此步骤仍然正常) . 代理端的工具非常简单,只需发送到HTTP endpoints :

<property name="messageType" value="application/json" scope="axis2" />
<property name="Accept" scope="transport" value="application/json" />
<payloadFactory media-type="json">
    <format>$1</format>
        <args>
            <arg evaluator="json" expression="$.eventMessage" />
        </args>
</payloadFactory>
<call>
    <endpoint>
        <http method="post" uri-template="http://localhost:9080/goal"></http>
    </endpoint>
</call>

除了发生挂起的匿名 endpoints (例如HTTP endpoints 关闭)之外,该过程正常工作,然后我能够看到如下的日志消息:

WARN {org.apache.synapse.endpoints.EndpointContext} -  Suspending endpoint : AnonymousEndpoint - current suspend duration is : 30000ms - Next retry after : Tue Oct 28 17:38:23 ICT 2014

如果我在传输接收器处停止请求流量并重新启动HTTP endpoints ,则在30 ms后 endpoints 可以恢复服务

如果传输接收器上的请求流量仍在运行,我看到上面的日志消息显示几次,然后ESB服务器不再记录该消息 . 此时,HTTP endpoints 被挂起,除非重新启动ESB服务器,否则永远不会返回服务

我也看到了这条日志消息:

WARN {org.apache.synapse.core.axis2.TimeoutHandler} -  Expiring message ID : urn:uuid:5dcedb38-3f9a-4a75-a201-ae4e76428216; dropping message after global timeout of : 120 seconds

这对我来说真的很奇怪,我想知道我在这里做错了什么 . 我真的需要你的建议

最好的祝福,

一个

1 回答

相关问题