Xml ActiveMQ 5.11.1不断抛出EOFEException和WIN';不要发送消息

Xml ActiveMQ 5.11.1不断抛出EOFEException和WIN';不要发送消息,xml,apache,shell,debugging,activemq,Xml,Apache,Shell,Debugging,Activemq,我有一个AMQ5.11.1实例运行在几个不同的服务器上。它们都配置相同,并连接到相同的网关。在一台特定的服务器上,我不断看到以下消息: 2015-08-12 08:53:59,026 | DEBUG | queue://server-01.lookupdata expiring messages .. | org.apache.activemq.broker.region.Queue | ActiveMQ Broker[server-01] Scheduler 2015-08-12 08:53:

我有一个AMQ5.11.1实例运行在几个不同的服务器上。它们都配置相同,并连接到相同的网关。在一台特定的服务器上,我不断看到以下消息:

2015-08-12 08:53:59,026 | DEBUG | queue://server-01.lookupdata expiring messages .. | org.apache.activemq.broker.region.Queue | ActiveMQ Broker[server-01] Scheduler
2015-08-12 08:53:59,029 | DEBUG | queue://server-01.lookupdata expiring messages done. | org.apache.activemq.broker.region.Queue | ActiveMQ Broker[server-01] Scheduler
2015-08-12 08:54:08,355 | DEBUG | 30000ms elapsed since last read check. | org.apache.activemq.transport.AbstractInactivityMonitor | ActiveMQ InactivityMonitor ReadCheckTimer
2015-08-12 08:54:08,407 | DEBUG | 30000ms elapsed since last read check. | org.apache.activemq.transport.AbstractInactivityMonitor | ActiveMQ InactivityMonitor ReadCheckTimer
2015-08-12 08:54:08,411 | INFO  | Network connection between vm://server-01#2 and tcp://gateway/209.221.27.54:55616@34260 shutdown due to a local error: java.io.EOFException | org.apache.activemq.network.DemandForwardingBridgeSupport | ActiveMQ Transport: tcp://gateway/209.221.27.54:55616@34260
2015-08-12 08:54:08,414 | DEBUG | The local Exception was: java.io.EOFException | org.apache.activemq.network.DemandForwardingBridgeSupport | ActiveMQ Transport: tcp://gateway/209.221.27.54:55616@34260
java.io.EOFException
        at java.io.DataInputStream.readInt(DataInputStream.java:392)[:1.7.0_71]
        at org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:258)[activemq-client-5.11.1.jar:5.11.1]
        at org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:221)[activemq-client-5.11.1.jar:5.11.1]
        at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:213)[activemq-client-5.11.1.jar:5.11.1]
        at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:196)[activemq-client-5.11.1.jar:5.11.1]
        at java.lang.Thread.run(Thread.java:745)[:1.7.0_71]
2015-08-12 08:54:08,418 | DEBUG |  stopping server-01 bridge to production | org.apache.activemq.network.DemandForwardingBridgeSupport | ActiveMQ BrokerService[server-01] Task-2
2015-08-12 08:54:08,420 | DEBUG | Unregistering MBean org.apache.activemq:brokerName=server-01,connector=networkConnectors,networkConnectorName=linkToGatewayController1,networkBridge=tcp_//209.221.27.54_55616,type=Broker | org.apache.activemq.broker.jmx.ManagementContext | ActiveMQ BrokerService[server-01] Task-2
调试输出没有帮助,我无法确定导致此连接持续断开的服务器实例之间的差异

它有丰富的记忆:

jps -v | grep activemq
40359 activemq.jar -Xmx8G
下面是我的activemq.xml的一部分:

   <networkConnector name="linkToGateway"
       uri="static:(tcp://gateway:55616)"
       networkTTL="3"
       duplex="false"
       prefetchSize="2"
   >
        <excludedDestinations>
            <queue physicalName=">"/>
        </excludedDestinations>
        <staticallyIncludedDestinations>
            <queue physicalName="server-01.lookupdata" />
        </staticallyIncludedDestinations>
    </networkConnector>


任何帮助都将不胜感激

首先确保您的连接没有像Tim Bish暗示的那样被外部中断


其次,看看下面的内容,它描述了一个具有类似症状的ActiveMQ错误。可能您需要更新ActiveMQ。

最初我打算将Tim Bish的答案标记为正确,但似乎他删除了它


网络连接是问题所在。某些连接被中断,在调查和清除这些问题后,事情开始顺利进行。

我遇到了同样的问题,并通过配置OpenWire协议解决了它。默认的OpenWire设置要求连接上的流量在10秒内,之后在30秒内。您将在日志中看到实际使用的值。我通过设置:
wireFormat.maxInactivityDuration=0禁用了此超时(在我的场景中没有问题…)

整个网址:

tcp://localhost:61616?connectionTimeout=0&keepAlive=true&useInactivityMonitor=false&wireFormat.maxInactivityDuration=0
或者确保您立即并定期使用该连接


您是否有防火墙或负载平衡器正在破坏您的连接?这是一个很好的观点。我现在正在研究这个问题。嗯,我看到了这个确切的问题,但是对于连接到没有防火墙的VM上的环回接口来说。我使用的是最新版本的5.11.1,所以这不是升级问题。我正在研究防火墙/负载平衡器。如果您面临相同的问题,请跟进JBos AMQ错误修复,最明显的是,修复尚未复制到活动MQ源。该错误是最近解决的,日期为2015年3月6日