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 » Two V7 JMS scenarios

Post new topic  Reply to topic
 Two V7 JMS scenarios « View previous topic :: View next topic » 
Author Message
queuetip
PostPosted: Mon Jul 14, 2008 3:57 pm    Post subject: Two V7 JMS scenarios Reply with quote

Acolyte

Joined: 03 Feb 2005
Posts: 67

Under V7, when a JMS client producer publishes a JMS message to a topic (assume that 3 subscriber queues that want publications for that topic), BEFORE the control is returned to the publishing client...

(1) Assuming everything goes right, does the queue manager copy the message to all 3 queues subscribing to the topic before returning to the publishing client?

(2) If one of the destination queues hit the "Queue Full" condition, what happens? Do any of the messages get copied to the 2 other queues? Will the queue manager save the message and remember the message needs to be put onto only 1 of those queues? Will 1 message be sent to the dead letter queue? Will no queues receive the messages (rollback)? What is returned to the JMS client issuing the published message?

Thanks,
Mike
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Mon Jul 14, 2008 4:13 pm    Post subject: Reply with quote

Grand High Poobah

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

What have you tried?
What was the result?
Enjoy
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
sridhsri
PostPosted: Mon Jul 14, 2008 7:59 pm    Post subject: Reply with quote

Master

Joined: 19 Jun 2008
Posts: 297

I haven't tried this scenario but I would assume that would depend on what is the UoW. If its a single UoW the a rollback should be expected. If not, then only queue should receive the message and two messages on the DLQ.
Back to top
View user's profile Send private message
queuetip
PostPosted: Mon Jul 14, 2008 10:15 pm    Post subject: Reply with quote

Acolyte

Joined: 03 Feb 2005
Posts: 67

Quote:
What have you tried?
What was the result?


Haven't tried anything...we are doing some planning and we are trying to understand how various JMS vendors (e.g. WMQ, JavaCAPS, Oracle, etc) handle certain use cases behind the scenes. Knowing what goes on under the covers helps - before we test out anything.

Is there anyone would actually understands the V7 WMQ internals that could answer this question?

Much appreciated - thanks!
Mike
Back to top
View user's profile Send private message
Michael Dag
PostPosted: Tue Jul 15, 2008 1:49 am    Post subject: Reply with quote

Jedi Knight

Joined: 13 Jun 2002
Posts: 2602
Location: The Netherlands (Amsterdam)

queuetip wrote:
Quote:
What have you tried?
What was the result?


Haven't tried anything...we are doing some planning and we are trying to understand how various JMS vendors (e.g. WMQ, JavaCAPS, Oracle, etc) handle certain use cases behind the scenes. Knowing what goes on under the covers helps - before we test out anything.

Is there anyone would actually understands the V7 WMQ internals that could answer this question?

Much appreciated - thanks!
Mike


are you planning on using JMS or MQ API ?

with V7 the MQ API has been extended a lot and allthough the mapping of JMS to MQ API is done to match as good as possible there is always more possible with the native API.

I know using the JMS API makes you less depended on a certain implementation, but the JMS API is just an API and does not describe implementation so what happens underneath and what return codes you
get from the native API still need to be interpreted


So are you looking at the JMS to MQ API mapping or how you would do something using MQ API?

with regard to your sample of who gets what there are some new settings:
PMSGDLV / NPMSGDLV Attribute Behaviour:
ALL - if one failure - no-one gets it
ALLDUR - any failure to a durablesubscriber – no-one gets it
ALLAVAIL - Failures don’t affect the delivery to subscribers who can accept it

so when above conditions are met (i.e. ALL set and Queue Full and no DLQ or DLQ also full), you will get a publication error (MQRC_PUBLICATION_FAILURE) on the MQPUT to the TOPIC
_________________
Michael



MQSystems Facebook page
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
queuetip
PostPosted: Tue Jul 15, 2008 7:09 am    Post subject: Reply with quote

Acolyte

Joined: 03 Feb 2005
Posts: 67

Thanks, Michael - this is the type of info I was looking for!


Quote:
are you planning on using JMS or MQ API ?


To answer your question, we are debating both JMS and MQI for WMQ. Our product integration needs to be as flexible as possible because we want to be able to "plug" into our customer's existing infrastructure - we will likely recommend either WMQ or Oracle, so we are leaning towards using JMS as much as possible. Some of our clients have pub/sub in other MOMs.


Quote:
ALL - if one failure - no-one gets it
ALLDUR - any failure to a durablesubscriber – no-one gets it
ALLAVAIL - Failures don’t affect the delivery to subscribers who can accept it

so when above conditions are met (i.e. ALL set and Queue Full and no DLQ or DLQ also full), you will get a publication error (MQRC_PUBLICATION_FAILURE) on the MQPUT to the TOPIC


I believe the "ALLAVAIL" is the scenario we are talking about. We don't want to penalize all subscribers just because one of them neglects to take care of clearing out their queue. So I would like a JMS answer and an MQI answer (if they are different)...do the 'good' queues still receive the message? Does the client receive an error or warning or good return code and is the "problem" queue(s) identified back to the client? Will WMQ V7 internally handle putting the event on the queue after the full queue is emptied or is that the responsibility of an admin or client?

Also, is there a significant performance difference between MQI and JMS in general? For certain scenarios of pub/sub or thresholds?
(Our messages are under 1K and worse case we'd produce 100,000 online and in 500,000 batch)

Thanks!
Mike
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 » Two V7 JMS scenarios
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.