You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by active_user <ja...@gmail.com> on 2006/10/17 21:06:00 UTC

Large numbers of Consumers

Hello all,
I've got a 4.0 Broker that is running on java 1.5.0_06 that is getting hung
upon sufficient load. High availability is enabled in a Master-Slave
configuration. When I have approximately 1300-1400 consumers connected to
the broker managing 3 queues and 2 topics, I start getting log errors
including:

2006-10-17 10:11:06,775 [.65.148.29:3356] ERROR ManagedRegionBroker           
- Failed to register subscription TopicSubscri
ption: consumer=ID:<HOSTNAME>-3313-1161074336386-0:0:-1:1, destinations=0,
dispatched=0, delivered=0, matched=0, discarde
d=0
javax.management.InstanceAlreadyExistsException:
org.apache.activemq:BrokerName=localhost,Type=Subscription,active=true,name=
ID_<HOSTNAME>-3313-1161074336386-0_0_-1_1
        at
com.sun.jmx.mbeanserver.RepositorySupport.addMBean(RepositorySupport.java:452)
        at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1410)
        at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:936)
        at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:337)
        at
com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:497)
        at
org.apache.activemq.broker.jmx.ManagedRegionBroker.registerSubscription(ManagedRegionBroker.java:260)
        at
org.apache.activemq.broker.jmx.ManagedRegionBroker.registerSubscription(ManagedRegionBroker.java:180)
        at
org.apache.activemq.broker.jmx.ManagedTopicRegion.createSubscription(ManagedTopicRegion.java:44)
        at
org.apache.activemq.broker.region.AbstractRegion.addConsumer(AbstractRegion.java:145)
        at
org.apache.activemq.broker.region.TopicRegion.addConsumer(TopicRegion.java:113)
        at
org.apache.activemq.broker.region.RegionBroker.addConsumer(RegionBroker.java:296)
        at
org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:73)
        at
org.apache.activemq.advisory.AdvisoryBroker.addConsumer(AdvisoryBroker.java:77)
        at
org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:73)
        at
org.apache.activemq.broker.MutableBrokerFilter.addConsumer(MutableBrokerFilter.java:86)
        at
org.apache.activemq.broker.AbstractConnection.processAddConsumer(AbstractConnection.java:427)
        at
org.apache.activemq.command.ConsumerInfo.visit(ConsumerInfo.java:295)
        at
org.apache.activemq.broker.AbstractConnection.service(AbstractConnection.java:201)
        at
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:62)
        at
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:97)
        at
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:63)
        at
org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:114)
        at
org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:122)
        at
org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:87)
        at
org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:143)
        at java.lang.Thread.run(Thread.java:595)

Eventually, the broker errors on attempts to publish messages to the queues,
and hangs. The broker is configured with:
<beans xmlns:amq="http://activemq.org/config/1.0">

        <amq:broker name="broker" persistent="false" useJmx="true"
useShutdownHook="true" deleteAllMessagesOnStartup="true">
                <amq:transportConnectors>
                        <amq:transportConnector uri="tcp://localhost:61635"
/>
                </amq:transportConnectors>
                <amq:memoryManager>
                        <amq:usageManager limit="100000000" /> <!-- size in
bytes -->
                </amq:memoryManager>
        </amq:broker>

</beans>

Has anyone seen this before? Any suggestions on how to increase the
scalability of the system, or resolve this exception. 

Thanks,
Jason

-- 
View this message in context: http://www.nabble.com/Large-numbers-of-Consumers-tf2461533.html#a6861870
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: Large numbers of Consumers

Posted by James Strachan <ja...@gmail.com>.
FWIW the code for the 4.0.2 release has been frozen for some time;
we've just been having some fun and games getting the NOTICE/LICENSE
files all in order together with all the source files (including
javascript and CSS!) having the correct license header comments. So if
you try the current RC of 4.0.2 it will be the same as the official
4.0.2 release when we get that completed.

http://incubator.apache.org/activemq/activemq-402-release.html

On 10/18/06, James Strachan <ja...@gmail.com> wrote:
> I wonder could you try reproduce this with 4.0.2 please? We've fixed a
> number of gremlins, particularly with the JMX support after 4.0
>
> On 10/17/06, active_user <ja...@gmail.com> wrote:
> >
> > Hello all,
> > I've got a 4.0 Broker that is running on java 1.5.0_06 that is getting hung
> > upon sufficient load. High availability is enabled in a Master-Slave
> > configuration. When I have approximately 1300-1400 consumers connected to
> > the broker managing 3 queues and 2 topics, I start getting log errors
> > including:
> >
> > 2006-10-17 10:11:06,775 [.65.148.29:3356] ERROR ManagedRegionBroker
> > - Failed to register subscription TopicSubscri
> > ption: consumer=ID:<HOSTNAME>-3313-1161074336386-0:0:-1:1, destinations=0,
> > dispatched=0, delivered=0, matched=0, discarde
> > d=0
> > javax.management.InstanceAlreadyExistsException:
> > org.apache.activemq:BrokerName=localhost,Type=Subscription,active=true,name=
> > ID_<HOSTNAME>-3313-1161074336386-0_0_-1_1
> >         at
> > com.sun.jmx.mbeanserver.RepositorySupport.addMBean(RepositorySupport.java:452)
> >         at
> > com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1410)
> >         at
> > com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:936)
> >         at
> > com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:337)
> >         at
> > com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:497)
> >         at
> > org.apache.activemq.broker.jmx.ManagedRegionBroker.registerSubscription(ManagedRegionBroker.java:260)
> >         at
> > org.apache.activemq.broker.jmx.ManagedRegionBroker.registerSubscription(ManagedRegionBroker.java:180)
> >         at
> > org.apache.activemq.broker.jmx.ManagedTopicRegion.createSubscription(ManagedTopicRegion.java:44)
> >         at
> > org.apache.activemq.broker.region.AbstractRegion.addConsumer(AbstractRegion.java:145)
> >         at
> > org.apache.activemq.broker.region.TopicRegion.addConsumer(TopicRegion.java:113)
> >         at
> > org.apache.activemq.broker.region.RegionBroker.addConsumer(RegionBroker.java:296)
> >         at
> > org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:73)
> >         at
> > org.apache.activemq.advisory.AdvisoryBroker.addConsumer(AdvisoryBroker.java:77)
> >         at
> > org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:73)
> >         at
> > org.apache.activemq.broker.MutableBrokerFilter.addConsumer(MutableBrokerFilter.java:86)
> >         at
> > org.apache.activemq.broker.AbstractConnection.processAddConsumer(AbstractConnection.java:427)
> >         at
> > org.apache.activemq.command.ConsumerInfo.visit(ConsumerInfo.java:295)
> >         at
> > org.apache.activemq.broker.AbstractConnection.service(AbstractConnection.java:201)
> >         at
> > org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:62)
> >         at
> > org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:97)
> >         at
> > org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:63)
> >         at
> > org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:114)
> >         at
> > org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:122)
> >         at
> > org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:87)
> >         at
> > org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:143)
> >         at java.lang.Thread.run(Thread.java:595)
> >
> > Eventually, the broker errors on attempts to publish messages to the queues,
> > and hangs. The broker is configured with:
> > <beans xmlns:amq="http://activemq.org/config/1.0">
> >
> >         <amq:broker name="broker" persistent="false" useJmx="true"
> > useShutdownHook="true" deleteAllMessagesOnStartup="true">
> >                 <amq:transportConnectors>
> >                         <amq:transportConnector uri="tcp://localhost:61635"
> > />
> >                 </amq:transportConnectors>
> >                 <amq:memoryManager>
> >                         <amq:usageManager limit="100000000" /> <!-- size in
> > bytes -->
> >                 </amq:memoryManager>
> >         </amq:broker>
> >
> > </beans>
> >
> > Has anyone seen this before? Any suggestions on how to increase the
> > scalability of the system, or resolve this exception.
> >
> > Thanks,
> > Jason
> >
> > --
> > View this message in context: http://www.nabble.com/Large-numbers-of-Consumers-tf2461533.html#a6861870
> > Sent from the ActiveMQ - User mailing list archive at Nabble.com.
> >
> >
>
>
> --
>
> James
> -------
> http://radio.weblogs.com/0112098/
>


-- 

James
-------
http://radio.weblogs.com/0112098/

Re: Large numbers of Consumers

Posted by Hiram Chirino <hi...@hiramchirino.com>.
the server holding the binaries are down for the moment (hardware failure).
Should be up soon.

On 10/23/06, active_user <ja...@gmail.com> wrote:
>
>
> I can't download the RC5 for 4.0.2, the link given is dead:
>
> http://people.apache.org/~chirino/incubator-activemq-4.0.2-RC5/maven1/incubator-activemq/distributions/
>
> Is there anywhere else we can get 4.0.2? Thanks.
>
>
> James.Strachan wrote:
> >
> > I wonder could you try reproduce this with 4.0.2 please? We've fixed a
> > number of gremlins, particularly with the JMX support after 4.0
> >
> > On 10/17/06, active_user <ja...@gmail.com> wrote:
> >>
> >> Hello all,
> >> I've got a 4.0 Broker that is running on java 1.5.0_06 that is getting
> >> hung
> >> upon sufficient load. High availability is enabled in a Master-Slave
> >> configuration. When I have approximately 1300-1400 consumers connected
> to
> >> the broker managing 3 queues and 2 topics, I start getting log errors
> >> including:
> >>
> >> 2006-10-17 10:11:06,775 [.65.148.29:3356] ERROR ManagedRegionBroker
> >> - Failed to register subscription TopicSubscri
> >> ption: consumer=ID:<HOSTNAME>-3313-1161074336386-0:0:-1:1,
> >> destinations=0,
> >> dispatched=0, delivered=0, matched=0, discarde
> >> d=0
> >> javax.management.InstanceAlreadyExistsException:
> >> org.apache.activemq:BrokerName=localhost
> ,Type=Subscription,active=true,name=
> >> ID_<HOSTNAME>-3313-1161074336386-0_0_-1_1
> >>         at
> >> com.sun.jmx.mbeanserver.RepositorySupport.addMBean(
> RepositorySupport.java:452)
> >>         at
> >>
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(
> DefaultMBeanServerInterceptor.java:1410)
> >>         at
> >> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(
> DefaultMBeanServerInterceptor.java:936)
> >>         at
> >> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(
> DefaultMBeanServerInterceptor.java:337)
> >>         at
> >> com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(
> JmxMBeanServer.java:497)
> >>         at
> >> org.apache.activemq.broker.jmx.ManagedRegionBroker.registerSubscription
> (ManagedRegionBroker.java:260)
> >>         at
> >> org.apache.activemq.broker.jmx.ManagedRegionBroker.registerSubscription
> (ManagedRegionBroker.java:180)
> >>         at
> >> org.apache.activemq.broker.jmx.ManagedTopicRegion.createSubscription(
> ManagedTopicRegion.java:44)
> >>         at
> >> org.apache.activemq.broker.region.AbstractRegion.addConsumer(
> AbstractRegion.java:145)
> >>         at
> >> org.apache.activemq.broker.region.TopicRegion.addConsumer(
> TopicRegion.java:113)
> >>         at
> >> org.apache.activemq.broker.region.RegionBroker.addConsumer(
> RegionBroker.java:296)
> >>         at
> >> org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java
> :73)
> >>         at
> >> org.apache.activemq.advisory.AdvisoryBroker.addConsumer(
> AdvisoryBroker.java:77)
> >>         at
> >> org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java
> :73)
> >>         at
> >> org.apache.activemq.broker.MutableBrokerFilter.addConsumer(
> MutableBrokerFilter.java:86)
> >>         at
> >> org.apache.activemq.broker.AbstractConnection.processAddConsumer(
> AbstractConnection.java:427)
> >>         at
> >> org.apache.activemq.command.ConsumerInfo.visit(ConsumerInfo.java:295)
> >>         at
> >> org.apache.activemq.broker.AbstractConnection.service(
> AbstractConnection.java:201)
> >>         at
> >> org.apache.activemq.broker.TransportConnection$1.onCommand(
> TransportConnection.java:62)
> >>         at
> >> org.apache.activemq.transport.ResponseCorrelator.onCommand(
> ResponseCorrelator.java:97)
> >>         at
> >> org.apache.activemq.transport.TransportFilter.onCommand(
> TransportFilter.java:63)
> >>         at
> >> org.apache.activemq.transport.WireFormatNegotiator.onCommand(
> WireFormatNegotiator.java:114)
> >>         at
> >> org.apache.activemq.transport.InactivityMonitor.onCommand(
> InactivityMonitor.java:122)
> >>         at
> >> org.apache.activemq.transport.TransportSupport.doConsume(
> TransportSupport.java:87)
> >>         at
> >> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java
> :143)
> >>         at java.lang.Thread.run(Thread.java:595)
> >>
> >> Eventually, the broker errors on attempts to publish messages to the
> >> queues,
> >> and hangs. The broker is configured with:
> >> <beans xmlns:amq="http://activemq.org/config/1.0">
> >>
> >>         <amq:broker name="broker" persistent="false" useJmx="true"
> >> useShutdownHook="true" deleteAllMessagesOnStartup="true">
> >>                 <amq:transportConnectors>
> >>                         <amq:transportConnector
> >> uri="tcp://localhost:61635"
> >> />
> >>                 </amq:transportConnectors>
> >>                 <amq:memoryManager>
> >>                         <amq:usageManager limit="100000000" /> <!--
> size
> >> in
> >> bytes -->
> >>                 </amq:memoryManager>
> >>         </amq:broker>
> >>
> >> </beans>
> >>
> >> Has anyone seen this before? Any suggestions on how to increase the
> >> scalability of the system, or resolve this exception.
> >>
> >> Thanks,
> >> Jason
> >>
> >> --
> >> View this message in context:
> >>
> http://www.nabble.com/Large-numbers-of-Consumers-tf2461533.html#a6861870
> >> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
> >>
> >>
> >
> >
> > --
> >
> > James
> > -------
> > http://radio.weblogs.com/0112098/
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/Large-numbers-of-Consumers-tf2461533.html#a6958410
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
>


-- 
Regards,
Hiram

Blog: http://hiramchirino.com

Re: Large numbers of Consumers

Posted by James Strachan <ja...@gmail.com>.
I wonder could you try reproduce this with 4.0.2 please? We've fixed a
number of gremlins, particularly with the JMX support after 4.0

On 10/17/06, active_user <ja...@gmail.com> wrote:
>
> Hello all,
> I've got a 4.0 Broker that is running on java 1.5.0_06 that is getting hung
> upon sufficient load. High availability is enabled in a Master-Slave
> configuration. When I have approximately 1300-1400 consumers connected to
> the broker managing 3 queues and 2 topics, I start getting log errors
> including:
>
> 2006-10-17 10:11:06,775 [.65.148.29:3356] ERROR ManagedRegionBroker
> - Failed to register subscription TopicSubscri
> ption: consumer=ID:<HOSTNAME>-3313-1161074336386-0:0:-1:1, destinations=0,
> dispatched=0, delivered=0, matched=0, discarde
> d=0
> javax.management.InstanceAlreadyExistsException:
> org.apache.activemq:BrokerName=localhost,Type=Subscription,active=true,name=
> ID_<HOSTNAME>-3313-1161074336386-0_0_-1_1
>         at
> com.sun.jmx.mbeanserver.RepositorySupport.addMBean(RepositorySupport.java:452)
>         at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1410)
>         at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:936)
>         at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:337)
>         at
> com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:497)
>         at
> org.apache.activemq.broker.jmx.ManagedRegionBroker.registerSubscription(ManagedRegionBroker.java:260)
>         at
> org.apache.activemq.broker.jmx.ManagedRegionBroker.registerSubscription(ManagedRegionBroker.java:180)
>         at
> org.apache.activemq.broker.jmx.ManagedTopicRegion.createSubscription(ManagedTopicRegion.java:44)
>         at
> org.apache.activemq.broker.region.AbstractRegion.addConsumer(AbstractRegion.java:145)
>         at
> org.apache.activemq.broker.region.TopicRegion.addConsumer(TopicRegion.java:113)
>         at
> org.apache.activemq.broker.region.RegionBroker.addConsumer(RegionBroker.java:296)
>         at
> org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:73)
>         at
> org.apache.activemq.advisory.AdvisoryBroker.addConsumer(AdvisoryBroker.java:77)
>         at
> org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:73)
>         at
> org.apache.activemq.broker.MutableBrokerFilter.addConsumer(MutableBrokerFilter.java:86)
>         at
> org.apache.activemq.broker.AbstractConnection.processAddConsumer(AbstractConnection.java:427)
>         at
> org.apache.activemq.command.ConsumerInfo.visit(ConsumerInfo.java:295)
>         at
> org.apache.activemq.broker.AbstractConnection.service(AbstractConnection.java:201)
>         at
> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:62)
>         at
> org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:97)
>         at
> org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:63)
>         at
> org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:114)
>         at
> org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:122)
>         at
> org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:87)
>         at
> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:143)
>         at java.lang.Thread.run(Thread.java:595)
>
> Eventually, the broker errors on attempts to publish messages to the queues,
> and hangs. The broker is configured with:
> <beans xmlns:amq="http://activemq.org/config/1.0">
>
>         <amq:broker name="broker" persistent="false" useJmx="true"
> useShutdownHook="true" deleteAllMessagesOnStartup="true">
>                 <amq:transportConnectors>
>                         <amq:transportConnector uri="tcp://localhost:61635"
> />
>                 </amq:transportConnectors>
>                 <amq:memoryManager>
>                         <amq:usageManager limit="100000000" /> <!-- size in
> bytes -->
>                 </amq:memoryManager>
>         </amq:broker>
>
> </beans>
>
> Has anyone seen this before? Any suggestions on how to increase the
> scalability of the system, or resolve this exception.
>
> Thanks,
> Jason
>
> --
> View this message in context: http://www.nabble.com/Large-numbers-of-Consumers-tf2461533.html#a6861870
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
>


-- 

James
-------
http://radio.weblogs.com/0112098/