Author |
Message
|
marcin.kasinski |
Posted: Mon Mar 24, 2008 10:09 am Post subject: Testing Pub-Sub durable scenario 2 |
|
|
Sentinel
Joined: 21 Dec 2004 Posts: 850 Location: Poland / Warsaw
|
Environment MQ 6 , MB 6.1
Hi,
I have small problem with publish-subscribe communication.
I tried to check behaviour of application when "queue full" error occurs.
I have JMS publisher application which publishing 10 messages to broker queue. From this queue messages are received by Broker flow with publish node.
I have JMS subscriber application which reads durable messages from queue placed on qmgr connected to broker qmgr.
Let say subscription queue max queue depth is set to 5.
If publisher and subscriber application are running everything works fine.
If subscriber app is not running and max queue depth is reached all messages are placed to dead Letter queue.
Problem is that if situation above occurs publishing 10 messages takes more or less 70 seconds.
I observed that placing messages to dead letter queue takes very long time.
This delay exists only if publisher and subscriber are connected to the same qmgr.
My question is what is source of this delay (publishing delay and placing messages to dead letter queue delay). _________________ Marcin |
|
Back to top |
|
 |
tleichen |
Posted: Mon Mar 24, 2008 12:10 pm Post subject: Re: Testing Pub-Sub durable scenario 2 |
|
|
Yatiri
Joined: 11 Apr 2005 Posts: 663 Location: Center of the USA
|
How are you determining that this delay is occurring? _________________ IBM Certified MQSeries Specialist
IBM Certified MQSeries Developer |
|
Back to top |
|
 |
marcin.kasinski |
Posted: Mon Mar 24, 2008 1:38 pm Post subject: Re: Testing Pub-Sub durable scenario 2 |
|
|
Sentinel
Joined: 21 Dec 2004 Posts: 850 Location: Poland / Warsaw
|
I'm just determining execution time of publish(msg) method. _________________ Marcin |
|
Back to top |
|
 |
bower5932 |
Posted: Tue Mar 25, 2008 3:32 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Aug 2001 Posts: 3023 Location: Dallas, TX, USA
|
Is it possible that your delay is caused by a re-reading of the message until the backout threshold is reached and then the message is moved to the DLQ? |
|
Back to top |
|
 |
marcin.kasinski |
Posted: Wed Mar 26, 2008 10:06 am Post subject: |
|
|
Sentinel
Joined: 21 Dec 2004 Posts: 850 Location: Poland / Warsaw
|
bower5932 wrote: |
Is it possible that your delay is caused by a re-reading of the message until the backout threshold is reached and then the message is moved to the DLQ? |
I dont think so.
Bellow there is result of my tests.
Max queue depth of subsciption queue set to 5.
Te same QMGR for subscriber and publisher
Publisher: Time execution of 10*tPub.publish(msg); --- 60 seconds
Subscriber: Time execution of TopicSubscriber tSub = tSess.createDurableSubscriber(t, "A"); 6 seconds
Different QMGRs for subscriber and publisher
Publisher: Time execution of 6*10*tPub.publish(msg); --- no delay
Subscriber: Time execution of TopicSubscriber tSub = tSess.createDurableSubscriber(t, "A"); -- very long
After running subscriber very often I get error:
com.ibm.mq.jms.NoBrokerResponseException: MQJMS5053: *** No broker response. Ple
ase ensure that the broker is running. If you are using the WebSphere MQ broker
check that your brokerVersion is set to V1 ***
at com.ibm.mq.jms.MQBrokerSubscriptionEngine.getBrokerResponse(MQBrokerS
ubscriptionEngine.java:3063)
at com.ibm.mq.jms.MQBrokerSubscriptionEngine.openDurableSubscription(MQB
rokerSubscriptionEngine.java:1059)
at com.ibm.mq.jms.MQSession.createDurableSubscriber(MQSession.java:5018)
at com.ibm.mq.jms.MQSession.createDurableSubscriber(MQSession.java:4838)
at pubsub.MySubscriber.process(MySubscriber.java:101)
at pubsub.MySubscriber.doit(MySubscriber.java:56)
at pubsub.MySubscriber.main(MySubscriber.java:50)
blad com.ibm.mq.jms.NoBrokerResponseException: MQJMS5053: *** No broker response
. Please ensure that the broker is running. If you are using the WebSphere MQ br
oker check that your brokerVersion is set to V1 ***
MQJMS5053: *** No broker response. Please ensure that the broker is running. If
you are using the WebSphere MQ broker check that your brokerVersion is set to V1
***
com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2033 _________________ Marcin |
|
Back to top |
|
 |
bower5932 |
Posted: Thu Mar 27, 2008 5:38 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Aug 2001 Posts: 3023 Location: Dallas, TX, USA
|
To me, this looks like you have the broker running on one qmgr but not on the other. What does the dspmqbrk command show when you get this error? |
|
Back to top |
|
 |
marcin.kasinski |
Posted: Fri Mar 28, 2008 1:36 am Post subject: |
|
|
Sentinel
Joined: 21 Dec 2004 Posts: 850 Location: Poland / Warsaw
|
bower5932 wrote: |
To me, this looks like you have the broker running on one qmgr but not on the other. What does the dspmqbrk command show when you get this error? |
I dont use mq broker but Message broker as I mentiones in first post. _________________ Marcin |
|
Back to top |
|
 |
bower5932 |
Posted: Fri Mar 28, 2008 5:07 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Aug 2001 Posts: 3023 Location: Dallas, TX, USA
|
Sorry about the confusion, but I'd still ask if the broker is running on both qmgrs. |
|
Back to top |
|
 |
marcin.kasinski |
Posted: Fri Mar 28, 2008 2:27 pm Post subject: |
|
|
Sentinel
Joined: 21 Dec 2004 Posts: 850 Location: Poland / Warsaw
|
bower5932 wrote: |
Sorry about the confusion, but I'd still ask if the broker is running on both qmgrs. |
If I use Message Broker I dont need MQ broker running on client side (publisher or subscriber) _________________ Marcin |
|
Back to top |
|
 |
|