What does the Slow attribute of a Connection object precisely mean?
Issue
While investigating how to detect and handle slow consumers, I have detected a discrepancy in JMX.
The Slow attribute at connection level does not match the SlowConsumer attribute at subscription level.
Here is a concrete example with a connection (with Slow=false) that has a single subscription:
org.apache.activemq:brokerName=xx.xx,connectionName=ID_xx.xx-8627-1460620754907-1_655311,connectionViewType=clientId,connector=clientConnectors,connectorName=stomp,type=Broker = {
"Active" : true,
"ActiveTransactionCount" : 0,
"Address" : "xxx.xxx.xx.xx",
"Blocked" : false,
"Broker" : "xx@xxx",
...
"Producers" : [],
"RemoteAddress" : "tcp://xxx.xxx.xxx.xx:xxxxx",
"Slow" : false,
"UserName" : null
}
And here is the corresponding subscription (and it has SlowConsumer=true):
org.apache.activemq:brokerName=xx.xx,clientId=ID_xx.xx-8627-1460620754907-1_655311,consumerId=ID_xx.xx-8627-1460620754907-1_655311_-1_1,destinationName=xx.xx,destinationType=Topic,endpoint=Consumer,type=Broker = {
"Active" : true,
"Broker" : "xx.xx",
...
"Selector" : null,
"SessionId" : -1,
"SlowConsumer" : true,
"SubcriptionId" : 1,
"SubcriptionName" : null,
"SubscriptionId" : 1,
"SubscriptionName" : null,
"Type" : "Topic",
"UserName" : null
}
So, why isn't the connection marked as being slow? What does the "Slow" attribute on a connection object precisely mean?
Environment
- JBoss A-MQ
- 6.2.1
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
