0

测试两个代理的集群,WKA 会员计划,PostgreSQL 消息存储,工作了几天,然后抛出以下错误:

TID: [] [] [2016-07-19 12:09:24,738] ERROR {org.wso2.andes.server.protocol.MultiVersionProtocolEngine} -  Error establishing session {org.wso2.andes.server.protocol.MultiVersionProtocolEngine}
java.io.IOException: Connection reset by peer
    at sun.nio.ch.FileDispatcherImpl.read0(Native Method)
    at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:39)
    at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223)
    at sun.nio.ch.IOUtil.read(IOUtil.java:197)
    at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:380)
    at org.apache.mina.transport.socket.nio.SocketIoProcessor.read(SocketIoProcessor.java:218)
    at org.apache.mina.transport.socket.nio.SocketIoProcessor.process(SocketIoProcessor.java:198)
    at org.apache.mina.transport.socket.nio.SocketIoProcessor.access$400(SocketIoProcessor.java:45)
    at org.apache.mina.transport.socket.nio.SocketIoProcessor$Worker.run(SocketIoProcessor.java:485)
    at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
    at java.lang.Thread.run(Thread.java:745)

Message Broker 的启动看起来很好,没有错误,与 PostgreSQL DB 的 JDBC 连接正常,注册表挂载看起来正常。然后在 wso2carbon.log 中出现该错误数次/分钟之后。有人有什么想法吗?据我所知,没有任何改变,我不知道它试图连接到什么。

4

1 回答 1

0

这通常发生在连接到 MB 的客户端尝试为每条消息创建连接时。jms 是重连接,不建议为每条消息创建连接。因此,请通过客户端实现并验证不是每条消息都创建连接。

如果您有任何机会使用 wso2 esb 将队列/主题发布/订阅到 mb,那么在 esb axis2.xml 中有一个属性“transport.jms.CacheLevel”连接缓存。阅读文档并为您的用例使用适当的缓存级别。

在 esb 4.8.1 中存在连接缓存属性的错误,目前在 4.9.0 中也已修复。这些是我可以根据给定信息想到的可能情况。如果您需要更多信息,请提供详细的用例。

于 2016-10-04T06:25:55.133 回答