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 » WebSphere Message Broker (ACE) Support » Queue = Deferred Work Item Database?

Post new topic  Reply to topic
 Queue = Deferred Work Item Database? « View previous topic :: View next topic » 
Author Message
wilsonjohn24
PostPosted: Thu Jul 02, 2009 12:42 am    Post subject: Queue = Deferred Work Item Database? Reply with quote

Voyager

Joined: 02 Feb 2007
Posts: 93
Location: Scotland

Context:

Some batch process sends 1000’s of FF messages to queues for say Sending Letters/invoices ( low priority), but I don’t want this traffic to interfere with other traffic on the ESB (normal business transactions).

So my solution is to tune the flow to process message slower – perhaps timer nodes, low no of threads etc. Not really worried about this lots of ways of tackling this.


Concern:

1) Is it acceptable working principle to allow message build up on queues for slow processing?
2) This quickly materializes into the question of using MQ as a database for deferring working items?

Queue = Deferred Work Item Database?




Would be interested in the forums thoughts on this one, where to draw the line both theoretically and practically?


ps: I know the MQ/WMB can do all this, but what I want is to know is this correct usage of Base MQ.
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Jul 02, 2009 1:08 am    Post subject: Re: Queue = Deferred Work Item Database? Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

wilsonjohn24 wrote:
1) Is it acceptable working principle to allow message build up on queues for slow processing?


IMHO it's valid to use a queue to decouple a sending application from a receiving one.

wilsonjohn24 wrote:
2) This quickly materializes into the question of using MQ as a database for deferring working items?

Queue = Deferred Work Item Database?


I'd draw a distinction between a queue, where work items are drawn from a FIFO stack, and a database such as you describe where items are drawn in a random access manner .

Other opinions may be valid of course.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Thu Jul 02, 2009 3:40 am    Post subject: Reply with quote

Grand High Poobah

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

If you have multiple brokers and an MQ Cluster with load sharing you can define qaliases only to certain brokers that would carry the bulk load of batch processing where others would carry the bulk load of online processing....

Perhaps make sure the batch work gets processed in a different queue/eg from online processing...

As well for the traffic not to interfere have an online cluster and a batch cluster with different channels...

Make sure your Input Queue Maxdepth is sized correctly for the batch...
Make sure you message priority for batch is lower than for online... although with a big qdepth and subsecond SLAs your are better off separating the queues or brokers...

I would just let the eg process normally. No need for a timer node...

Finally MOVE the batch process to hours with low online volume...

Have fun
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
telecoda
PostPosted: Thu Jul 02, 2009 4:28 am    Post subject: Reply with quote

Novice

Joined: 05 Feb 2008
Posts: 15

Also make sure your queue is persistent if you are storing valuable data in there.
Back to top
View user's profile Send private message
WMBDEV1
PostPosted: Thu Jul 02, 2009 4:35 am    Post subject: Reply with quote

Sentinel

Joined: 05 Mar 2009
Posts: 888
Location: UK

What a little gem this is.....

telecoda wrote:
Also make sure your queue is persistent if you are storing valuable data in there.


Unrelated to the question and a little basic / general, but a gem all the same.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Thu Jul 02, 2009 6:16 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

WMBDEV1 wrote:
Unrelated to the question and a little basic / general, but a gem all the same.

Especially as it's inaccurate.
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Jul 02, 2009 6:23 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

mqjeff wrote:
WMBDEV1 wrote:
Unrelated to the question and a little basic / general, but a gem all the same.

Especially as it's inaccurate.


Because queue's are not persistent, messages are?
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
WMBDEV1
PostPosted: Thu Jul 02, 2009 6:26 am    Post subject: Reply with quote

Sentinel

Joined: 05 Mar 2009
Posts: 888
Location: UK

Vitor wrote:
mqjeff wrote:
WMBDEV1 wrote:
Unrelated to the question and a little basic / general, but a gem all the same.

Especially as it's inaccurate.


Because queue's are not persistent, messages are?


Absolutly, one of the most common mistakes people make. Surprises me how many people dont get this.....
Back to top
View user's profile Send private message
wilsonjohn24
PostPosted: Thu Jul 02, 2009 10:11 pm    Post subject: Reply with quote

Voyager

Joined: 02 Feb 2007
Posts: 93
Location: Scotland

Thanks for the responses to question.

So based on the responses I am gathering it is an fully acceptiable use of MQ to allow build up of messages - for trickle/batch processing.

Easy design justification then I will just link off to this forum URL in my design rational section



cheers

John



Back to top
View user's profile Send private message
fjb_saper
PostPosted: Thu Jul 02, 2009 10:46 pm    Post subject: Reply with quote

Grand High Poobah

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

wilsonjohn24 wrote:
Thanks for the responses to question.

So based on the responses I am gathering it is an fully acceptiable use of MQ to allow build up of messages - for trickle/batch processing.

Easy design justification then I will just link off to this forum URL in my design rational section



cheers

John





Don't remember if we told you yet but if you are running in circular logging and even more so if you are running in linear logging you better make sure you have also enough log space to accommodate your batch.

We have queues that get drained 3 times a day and can have up to 200,000 small messages on it. The schedule drains them usually when they hit between 50,000 and 100K messages.

Enjoy
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
telecoda
PostPosted: Fri Jul 03, 2009 3:14 am    Post subject: Reply with quote

Novice

Joined: 05 Feb 2008
Posts: 15

WMBDEV1 wrote:
Vitor wrote:
mqjeff wrote:
WMBDEV1 wrote:
Unrelated to the question and a little basic / general, but a gem all the same.

Especially as it's inaccurate.


Because queue's are not persistent, messages are?


Absolutly, one of the most common mistakes people make. Surprises me how many people dont get this.....


*hangs head in shame*

Well that's me told off then!
Back to top
View user's profile Send private message
Vitor
PostPosted: Fri Jul 03, 2009 3:42 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

telecoda wrote:
Well that's me told off then!


Better you take the hit from us than you discover a load of business-critical messages have been lost despite the queue being set to persistent. Discovering too late that the actual queue attribute is default persistence, and the developer chose to set it directly.

You'll find a large number of discussions in here on the advantages of applications using default persistence & the mq admin determining persistence over applications setting it directly. One of those questions with no right answer.
_________________
Honesty is the best policy.
Insanity is the best defence.
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 » WebSphere Message Broker (ACE) Support » Queue = Deferred Work Item Database?
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.