activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "joechen8310@gmail.com" <joechen8...@gmail.com>
Subject wait a very long time to synchronize the consumer info between the network connector if we have a lot of consumers (60k/broker)
Date Wed, 11 May 2016 08:59:28 GMT
we have 3 brokers setup as a mesh topology, each broker have 60k clients and
every one client subscribe and publish a diferent topic with the client id 
in topic, so we have 60k*2= 120k topic for one broker´╝î we found after 60k
clients was connected, we need to wait a very long time to synchronize the
consumer info between the network connector. we got  below block in thread
dump,other wise the message can not arrive to the consumers.  Hope anyone
can help.

"ActiveMQ NIO Worker 35" daemon prio=10 tid=0x00007fe8a0045000 nid=0xfd68
runnable [0x00007fe87baea000] 
   java.lang.Thread.State: RUNNABLE 
        at java.util.ArrayList.addAll(ArrayList.java:559) 
        at
org.apache.activemq.command.ConsumerInfo.getNetworkConsumerIds(ConsumerInfo.java:437) 
        - locked <0x000000059ba55af0> (a
org.apache.activemq.command.ConsumerInfo) 
        at
org.apache.activemq.network.DemandForwardingBridgeSupport.duplicateSuppressionIsRequired(DemandForwardingBridgeSupport.java:1218)

        at
org.apache.activemq.network.DemandForwardingBridgeSupport.addConsumerInfo(DemandForwardingBridgeSupport.java:1184)

        at
org.apache.activemq.network.DemandForwardingBridgeSupport.serviceRemoteConsumerAdvisory(DemandForwardingBridgeSupport.java:772)

        - locked <0x0000000540026840> (a java.net.URI) 
        at
org.apache.activemq.network.DemandForwardingBridgeSupport.serviceRemoteCommand(DemandForwardingBridgeSupport.java:610)

        at
org.apache.activemq.network.DemandForwardingBridgeSupport$3.onCommand(DemandForwardingBridgeSupport.java:225)

        at
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:116) 
        at
org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:50) 
        at
org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:125)

        at
org.apache.activemq.transport.AbstractInactivityMonitor.onCommand(AbstractInactivityMonitor.java:300)

        at
org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83) 
        at
org.apache.activemq.transport.nio.NIOTransport.serviceRead(NIOTransport.java:156) 
        at
org.apache.activemq.transport.nio.NIOTransport$1.onSelect(NIOTransport.java:80) 
        at
org.apache.activemq.transport.nio.SelectorSelection.onSelect(SelectorSelection.java:97) 
        at
org.apache.activemq.transport.nio.SelectorWorker$1.run(SelectorWorker.java:119) 
        at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
        at java.lang.Thread.run(Thread.java:745)



--
View this message in context: http://activemq.2283324.n4.nabble.com/wait-a-very-long-time-to-synchronize-the-consumer-info-between-the-network-connector-if-we-have-a-lo-tp4711822.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.

Mime
View raw message