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 » General IBM MQ Support » Slowness in Transferring Messages

Post new topic  Reply to topic
 Slowness in Transferring Messages « View previous topic :: View next topic » 
Author Message
sarathmattam
PostPosted: Mon Jul 15, 2013 2:47 am    Post subject: Slowness in Transferring Messages Reply with quote

Voyager

Joined: 05 Sep 2008
Posts: 94

Dear All,

I am here to get an advice on the issue and the remedy that we have taken (at least temporarily) mentioned below

Issue :

Slowness in Transferring the messages. We have 2 queue managers QM1 and QM2 on different network, geographically located at a distance of around 200 KM. We are using distributed queuing and a single channel connecting these two queue managers. An application writes messages to a remote queue, QM1.RM(on QM1) and is expected to be delivered to QM2.LQ (on QM2).The average size of the message being passed through the channel is 2 MB. For security reason ( as per the network team), we have a network switch in place which would disconnect the networks intermittently (say if its connected for 5 min, then it would be disconnected for the next 5 min). Messages are being written to the queue at a speed of 1 msg/6 sec. We have enough band width (as per network team based on their analysis) to send the messages out. But, we are experiencing a slowness in transferring the messages.

Solution Proposed :

1. Delete the Remote queue, QM1.RM. Create a local queue with the same name so that no changes are required at the application end
2. Create remote queues pointing to the same destination queue
3. Create additional channels between QM1 and QM2
4. Configure Trigger on QM1.RM to distribute messages to the remote queues. ( For this we are making use of the QLOAD utility)

Kindly let me know how practical is this approach.


Regards,
Sarath
Back to top
View user's profile Send private message
sumit
PostPosted: Mon Jul 15, 2013 3:47 am    Post subject: Re: Slowness in Transferring Messages Reply with quote

Partisan

Joined: 19 Jan 2006
Posts: 398

sarathmattam wrote:
Messages are being written to the queue at a speed of 1 msg/6 sec.

Transfer of messages from one qmgr to another qmgr is quick. Generally, the application which puts message to a queue consumes more time and it appears that MQ is taking time to process them.
Can you find out how much time does your application take to put one complete 2 MB message in a queue and then see how much time did qmgr take to send message from QM1 to QM2?
_________________
Regards
Sumit
Back to top
View user's profile Send private message Yahoo Messenger
sarathmattam
PostPosted: Wed Jul 17, 2013 2:04 am    Post subject: Reply with quote

Voyager

Joined: 05 Sep 2008
Posts: 94

Dear Sumit,

I feel the application is writing the messages with a better pace that MQ transferring it .. Because i can see a pile of messages in the transmit queue ..
Is there any other parameters to be checked ?

Regards,
Sarath
Back to top
View user's profile Send private message
exerk
PostPosted: Wed Jul 17, 2013 3:19 am    Post subject: Reply with quote

Jedi Council

Joined: 02 Nov 2006
Posts: 6339

sarathmattam wrote:
...I feel the application is writing the messages with a better pace that MQ transferring it...

Evidence is a better indicator than a 'feeling', because...

sarathmattam wrote:
...Because i can see a pile of messages in the transmit queue...

...the pile of messages can be uncommitted.

Consider: An application puts 10,000 messages to the queue and waits an hour to commit them - because WMQ cannot transmit them until they are committed, the 'feeling' is that WMQ must be slow, and this is reinforced because the application is capable of 1000 PUTS-per-second; think on that.
_________________
It's puzzling, I don't think I've ever seen anything quite like this before...and it's hard to soar like an eagle when you're surrounded by turkeys.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Wed Jul 17, 2013 5:44 am    Post subject: Reply with quote

Grand High Poobah

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

You might also need to check if any queue on the destination qmgr is full.
This may dramatically slow down the channel...
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
PeterPotkay
PostPosted: Wed Jul 17, 2013 7:49 am    Post subject: Re: Slowness in Transferring Messages Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7722

sarathmattam wrote:
Solution Proposed :

1. Delete the Remote queue, QM1.RM. Create a local queue with the same name so that no changes are required at the application end
2. Create remote queues pointing to the same destination queue
3. Create additional channels between QM1 and QM2
4. Configure Trigger on QM1.RM to distribute messages to the remote queues. ( For this we are making use of the QLOAD utility)

Kindly let me know how practical is this approach.




Why do you think this woudl get messages any quicker to the final destination? You've added extra steps and potential failure points.

Quote:
Messages are being written to the queue at a speed of 1 msg/6 sec. We have enough band width (as per network team based on their analysis) to send the messages out. But, we are experiencing a slowness in transferring the messages.

What exactly does slowness in transferring messages mean?

Maybe you have your channel retry parameters set incorrectly and the SNDR channel takes several minutes to recover every 5 minutes when the connection is purposely severed by your network team.
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
zpat
PostPosted: Wed Jul 17, 2013 8:01 am    Post subject: Reply with quote

Jedi Council

Joined: 19 May 2001
Posts: 5866
Location: UK

Disconnecting the network every 5 mins is fairly odd to say the least.

However, ignoring that, change your batch size on the channel to a smaller value. Make sure TCP keepalive is set in the qm.ini file, lower the channel heartbeat interval value, reduce the long retry interval value.

(Make one change at a time to see the effect).
Back to top
View user's profile Send private message
PeterPotkay
PostPosted: Wed Jul 17, 2013 11:21 am    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7722

At 5 minute intervals I think Short Retry Interval also needs to be looked at on the SNDR channel.
With frequent network disruptions the AdoptNewMCA settings on the receiving side will be important.
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
sarathmattam
PostPosted: Sat Jul 20, 2013 12:42 am    Post subject: Reply with quote

Voyager

Joined: 05 Sep 2008
Posts: 94

Hi exerk, I totally agree with you .. As we have network switch in place which disconnects the network at specified time, the BATCHSIZE factor was already taken care of. Currently it is kept at a value as low as 5. As this would make MQ to do more commits, this could be one of the factors causing slowness. But, am afraid that if i keep a high value for Batch Size and if the network disconnects just before the Batch size is reached, all the messages would be rolled back ..
Back to top
View user's profile Send private message
sarathmattam
PostPosted: Sat Jul 20, 2013 12:52 am    Post subject: Reply with quote

Voyager

Joined: 05 Sep 2008
Posts: 94

@ fjb_saper : The queue at destination is not full or there is not pile up of messages at the target end. As and when the messages reach the target side, its getting comsumed by the target application.

@PeterPotkay : This is rational behind that thought .More the number of channels, more the number of messages it can transfer ( provided you have enough band width) . As per the network team, only 1/5th of the available band with is being utilized. This figures prompted me to think of such an approch of increasing the number of channels.

@ Zpat : Me too agree that its odd. but thats the requirement and dnt find a chance to alter this .. Now, Batch size and short retry interval is also modified and smaller values (compared to the default values) are configured now. I will look at the other parameters you mentioned and will let u know.
Back to top
View user's profile Send private message
sarathmattam
PostPosted: Sat Jul 20, 2013 12:56 am    Post subject: Reply with quote

Voyager

Joined: 05 Sep 2008
Posts: 94

We have tested the approach mentioned in my first post in our staging environment using the QLOAD utility. It shows very positive results. We have tested with 42 messages of 2 MB each. The new approach showed almost 45-50% improvement in the time taken. But, what I need to know from experts here is that

1. Is this a good (fairly good) method ?
2. Can any one please suggest a better method with out using an external tool like QLOAD ?
Back to top
View user's profile Send private message
sarathmattam
PostPosted: Mon Jul 22, 2013 10:32 pm    Post subject: Reply with quote

Voyager

Joined: 05 Sep 2008
Posts: 94

Hi All,

Please share your thoughts ..

Regards,
Sarath
Back to top
View user's profile Send private message
exerk
PostPosted: Mon Jul 22, 2013 11:25 pm    Post subject: Reply with quote

Jedi Council

Joined: 02 Nov 2006
Posts: 6339

sarathmattam wrote:
Hi All,

Please share your thoughts ..

Regards,
Sarath

My thoughts are: sort out the network disruption; as pointed out in a previous post, you are adding complexity and therefore points of failure.
_________________
It's puzzling, I don't think I've ever seen anything quite like this before...and it's hard to soar like an eagle when you're surrounded by turkeys.
Back to top
View user's profile Send private message
sarathmattam
PostPosted: Tue Jul 23, 2013 2:35 am    Post subject: Reply with quote

Voyager

Joined: 05 Sep 2008
Posts: 94

Hi exerk,

Unfortunately the decision to change network switch mechanism is not in my hand. I can only suggest, but seems thats not going to work out .. So what am asking for is a possibility to achieve higher through put keeping the switch in place.

I have tried the option of Pipelining of Channels by configuring the same qm.ini file. But, that also dint give me a remarkable improvement in performance.

Regards,
Sarath
Back to top
View user's profile Send private message
Mr Butcher
PostPosted: Tue Jul 23, 2013 4:56 am    Post subject: Re: Slowness in Transferring Messages Reply with quote

Padawan

Joined: 23 May 2005
Posts: 1716

sarathmattam wrote:
.... We have enough band width .....


Hi

what exactly is "enough" ? If it takes you 6 seconds for a message to be transfered at an average of 2MB size, it sounds like something around 2Mbit line or a bit more. What bandwidth do you have available? And is it all available for MQ ?!? (i know networking guys can limit usage somehow.....)

i would go for batchsize 1 for large messages. i would also check channel retry parameters on the receiving end (and set no retry). make sure the receiving qmgr has a DLQ assigned.

i would also do some tests with persistent / non persistent messages to check if disk i/o could be a problem.
_________________
Regards, Butcher
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 » General IBM MQ Support » Slowness in Transferring Messages
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.