ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » IBM MQ Java / JMS » 20 seconds pause when receiving a not persistent message

Post new topic  Reply to topic
 20 seconds pause when receiving a not persistent message « View previous topic :: View next topic » 
Author Message
ophir azulai
PostPosted: Tue Jun 24, 2008 4:42 am    Post subject: 20 seconds pause when receiving a not persistent message Reply with quote

Novice

Joined: 29 May 2008
Posts: 13

Hi all,

I have the following active/active configuration:
2 pairs of active/passive MQ 6.0.2.3 over MSCS (cross configuration - on each machine I have 1 active QM and 1 passive QM)
2 WAS 6.1.0.15 which receive and send to both QMs on the machines as the MQs (have two listener ports for each MDB)

The test which we are doing is:
- I have 18 application who send a not persistent messages to a 'ping' queue and receive back messages in a 'pong' queue by using the JMS selector.
- Each application sends the ping every 500msec in a round robing fashion to the two QMs (36 messages per second).
- The MDB who gets the ping just send the pong message with the JMS selector.
- The MDB is defined with no transaction.
- The pong message is also not persistent.
- These 18 applications also send and receive other persistent messages not in a high rate.
- The 'ping' listener ports are defined with max_sessions = 4

After some time (between 20 minutes to a hour) the MDBs stop receiving the messages in both machines for 20 seconds.

Some other MDB who also gets a not persistent messages and update the database still work in the 20 seconds time period so just the 'ping' queue is stuck.

What is so strange is that it happened in both WASs or MQs in the same time (I have the active/active redundancy).

Any idea how to solve this issue ?

Thanks,
Ophir
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Tue Jun 24, 2008 7:17 am    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

Could have been a TCP/IP hickup...
Quote:
- The MDB is defined with no transaction.

I would not advise on it. It is better for performance especially when you have multiple receivers to have all receivers act in a transacted manner. (It says so somewhere in the manual but I can't remember where).

Enjoy
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
ophir azulai
PostPosted: Tue Jun 24, 2008 9:24 am    Post subject: Reply with quote

Novice

Joined: 29 May 2008
Posts: 13

Hi,

The MDB was with transaction and it also didn't work (removed it during the debugging).

Regarding the TCP problem then other MDBs worked during the 20 seconds period so I don't think it is the case. Also it happens in every test.

Thanks,
Ophir
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Tue Jun 24, 2008 1:02 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

Are you sure the delay is not caused by some external phenomenon like gc running at that same moment etc...
Or due to some misconfiguration (huge message going through the channel) etc...


_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
ophir azulai
PostPosted: Tue Jun 24, 2008 8:20 pm    Post subject: Reply with quote

Novice

Joined: 29 May 2008
Posts: 13

Hi,

The GC isn't running in the same time because there are some other MDBs which are working in this period. Also it is unlikely that there will be gc on the two machines on the same time.
BTW I'm using the optavgpause for both WASs for minimizing the gc's pause time.

All the messages are sent are very small.

The MDB which is getting the ping is also sending the pong in a round robin fashion. So he can get the ping from QM1 and send the pong to QM2.
This might be a clue.

Thanks,
Ophir
Back to top
View user's profile Send private message
ophir azulai
PostPosted: Sat Jul 05, 2008 10:52 am    Post subject: The solution Reply with quote

Novice

Joined: 29 May 2008
Posts: 13

Hi All,

The solution which was found is:
1. In the queue manager properties:
1.1. Disable online monitoring
1.2. Disable statistics monitoring
1.3. Disable accounting monitoring
2. In queue manager->advanced->channels->'channel'->statistics
2.1 Set channel monitoring to off

Thanks,
Ophir
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » IBM MQ Java / JMS » 20 seconds pause when receiving a not persistent message
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.