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 » Question concerning MQ Best practices for large messages

Post new topic  Reply to topic
 Question concerning MQ Best practices for large messages « View previous topic :: View next topic » 
Author Message
JohnRodey
PostPosted: Wed Jun 01, 2005 7:55 am    Post subject: Question concerning MQ Best practices for large messages Reply with quote

Centurion

Joined: 13 Apr 2005
Posts: 103

Our system must be able to handle large messages of about 70 Megs or possibly more. I know MQ can be set to handle messages of up to 100Mb.

If you know the maximum size that a message can be is it better to make the queue able to store the entire message or to have your application break it up into smaller chunks and send it as a group of messages?

Since most messages will not be 70 Mb, some (if not most) may be as small as 1/4 Mb, does it make your system any less performant by setting the max message size to be 100 Mb?

Thanks for any help!
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Wed Jun 01, 2005 8:02 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

I always configure new queue managers to support 100MB messages.

Then I don't get phone calls in the middle of the night from operations saying that some programmer decided to send a 95MB message and it couldn't go through, because the qmgr was only set to support 90MB messages.

In cases where there are partner qmgrs that do not support larger messages, it's best to limit the queue definintions on your side so that the programmer gets a bad return code on the put, rather than having to deal with it on the DLQ.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
PeterPotkay
PostPosted: Wed Jun 01, 2005 6:00 pm    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7722

1 70 MEG message or 700 1 MEG messages. Well, the end result is the same, but consider moving this data between 2 QMs. The 70 Megger will take a bit of time to be moved across the channel, during which time no other messages can be shipped. Whereas the 70 1 Meggers would allow the possability of other messages to be intermingled and not delayed.

Also, consider what happens for the channels batch processing. If the channel batch size is set to the default of 50, and your channel sends of few of those 70 Meggers in a batch, it will take along time to backout if it needs to. If the app puts the messages fast enough to the XMITQ so that the Batch Interval doesn't get a chance to tell the channel to end the batch, now you got a batch of 50 70 Meg messages = 3.5 GIG = getting close to exceeding your log space if you happened to make them as big as possible.

If there are other applications using these QMs to ship messages, and they are significantly smaller, and time sensitive, then this is one of the few times that multiple channels between 2 QMs makes sense. Make a second "FAT" channel, that will be used to ship these huge messages. Meanwhile the regular channel can quickly move the smaller messages.

All things being equal, if the app can easily break the messages up, you are probably better off.
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
Nigelg
PostPosted: Thu Jun 02, 2005 12:08 am    Post subject: Reply with quote

Grand Master

Joined: 02 Aug 2004
Posts: 1046

When a channel is moving a very large msg it needs to allocate a lot of heap memory, to read the msg from the queue, and possibly to convert it as well. If the heap memory is not available to the process then the channel will fail.

I suggest that if you need large msgs you enable msg segmentation so that the msgs are stored and transmitted as msgs of the max msg size, but can be put and got as complete msgs with the appropriate MQPMO and MQGMO options.
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 » Question concerning MQ Best practices for large 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.