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 » WebsphereMQ with JMS

Post new topic  Reply to topic
 WebsphereMQ with JMS « View previous topic :: View next topic » 
Author Message
pressy
PostPosted: Mon Jul 10, 2006 2:08 am    Post subject: WebsphereMQ with JMS Reply with quote

Newbie

Joined: 10 Jul 2006
Posts: 7

Hi

I'm a newbee to websphereMQ, this is general question and would like to have some reference materials or tips on that.

I'm trying to design a batchframe work system, using WSApplication Server,WebsphereMQ and JMS technologies.

1. Approximately there will be around 1000000 records needs to be processed daily .

2. These records may be categorized according to the functional group.
There are approximately 25-30 functional groups i'm having.

3. There is a possibility that , 2 or more functional groups batches will be running at a same time

4. We are also planning to have clustering in Websphere Application Server.

Now in the configuration of MQ,

a. Is it better for each functional group i have a Queue defined and a Listener defined.
or

For all the Functional Groups intially i have 1 Queue and 1 Listener and then this listener will inturn sends the messages to other queues for processing of the messages.


b. what kind of transactional managements are sugeested.

c. What kind of Clustering techniques might be helpful in the load balancing..

d.What kind of error configurations are best suited for this environment.


I have many more questions but this is the start... request you to point to the right design or solutions.


--pressy
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Mon Jul 10, 2006 2:35 pm    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

WAS, MQ, and JMS are not designed to implement batch processing. They are designed to implement single-transaction processing.

You should design your system to put the smallest possible piece of data into one transaction. So if you have 100000 records, then each record should be it's own transaction - you should not even think of trying to do one transaction over 100000 records. Even if each record is only one byte long - this is going to be a big load on the transactional management capabilities of your system.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
pressy
PostPosted: Mon Jul 10, 2006 11:39 pm    Post subject: Reply with quote

Newbie

Joined: 10 Jul 2006
Posts: 7

Quote:
WAS, MQ, and JMS are not designed to implement batch processing. They are designed to implement single-transaction processing.

You should design your system to put the smallest possible piece of data into one transaction. So if you have 100000 records, then each record should be it's own transaction - you should not even think of trying to do one transaction over 100000 records. Even if each record is only one byte long - this is going to be a big load on the transactional management capabilities of your system


Hi

Probably i should give more explanation for this..

I'm defenitely not interested in putting all the records in to a single transaction I'm considering here the following type of design.


MessageSender---->Queue1------->MDB1[listenes messages on queue1]

MDB1-------------->Queue2[specificto functional group]
MDB1--------------->Queue3[[specificto functional group]


So as you can see one MDB's can listen to all the messages and based on the message type, puts the message into the respective functional queue, then an MDB will listen to that queue and process that message.

This is what i'm planning , now i will split the no of work records into atomic unit of works so that my transaction loads are reduced.

The thing what i'm looking is how to increase the speed of Message Consuming when compared with Message Producing.


This is in addition to the questions i have posted originally.


--Pressy
Back to top
View user's profile Send private message
mvic
PostPosted: Tue Jul 11, 2006 12:41 am    Post subject: Reply with quote

Jedi

Joined: 09 Mar 2004
Posts: 2080

jefflowrey wrote:
You should design your system to put the smallest possible piece of data into one transaction. So if you have 100000 records, then each record should be it's own transaction

Interested to know more about your thinking here. MQ tries hard to avoid I/O until the MQCMIT. Therefore if you can do (say) 10 small things within a single UOW then this will go faster than doing the same 10 small things under 10 separate UOWs. A similar principle is applied to message batching on normal channels: ie. the commit processing is done once per batch rather than once per message.
Back to top
View user's profile Send private message
mvic
PostPosted: Tue Jul 11, 2006 12:45 am    Post subject: Re: WebsphereMQ with JMS Reply with quote

Jedi

Joined: 09 Mar 2004
Posts: 2080

pressy wrote:
2. These records may be categorized according to the functional group.
There are approximately 25-30 functional groups i'm having.

Will this mean 25-30 different styles of processing the messages too? If so, it will probably be a good idea to have 25-30 "input" queues to handle the distinct types. Ideally you will also have 25-30 application programs watching the 25-30 queues.
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Tue Jul 11, 2006 3:05 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

mvic wrote:
jefflowrey wrote:
You should design your system to put the smallest possible piece of data into one transaction. So if you have 100000 records, then each record should be it's own transaction

Interested to know more about your thinking here. MQ tries hard to avoid I/O until the MQCMIT. Therefore if you can do (say) 10 small things within a single UOW then this will go faster than doing the same 10 small things under 10 separate UOWs. A similar principle is applied to message batching on normal channels: ie. the commit processing is done once per batch rather than once per message.


It's always better to program conservatively, and then adjust for performance if needed.
_________________
I am *not* the model of the modern major general.
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 » WebsphereMQ with JMS
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.