|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
newbie: design question on queues |
« View previous topic :: View next topic » |
Author |
Message
|
Albator |
Posted: Sat May 08, 2004 5:57 pm Post subject: newbie: design question on queues |
|
|
 Voyager
Joined: 04 Mar 2004 Posts: 75 Location: Toronto, Canada
|
Hi,
I would like to know if I am on the right track for doing the following:
We have a client that needs to send a request from an MQ Server to our MQ server. Now, our MQ needs to relay the message to a biztalk server within the same network. All processing is done on the biztalk and then a response must be sent from our Biztalk to our MQ server which in turn sends it to the client. Now, the thing is that our MQ must send a confirmation message AS SOON as it receive the client's message (before even sending anything to our Biztalk server). I assume that the client needs to have a reply queue based on the stuff I read. I was thinking that the following is needed:
ON THE CLIENT SIDE
1. The client has a remote queue definition (which points to our local queue on the MQ Server) say ORDERREQUESTS
2. The client has a local queue for receiving the processed requests (ORDERPROCESSED)
3. The client has a local queue for storing the acknowlegments received from us (CONFIRMATION)
ON OUR SIDE
1. A local queue for order requests (ORDERREQUESTS)
2. a remote queue definition (ORDERPROCESSED)
3. A remote queue for sending acknowlegments to the client's CONFIRMATION queue
Also what should I do if I want the confirmation/acknowlegment messages to bedone automatically (without having an application reading from the ORDERREQUEST queue and sending an acknowlegement manually to the client's CONFIRMATION queue).
Please give as much detail as possible cause as you can see, I am a total newbie.
Thank you all,
sas |
|
Back to top |
|
 |
Michael Dag |
Posted: Sat May 08, 2004 11:56 pm Post subject: |
|
|
 Jedi Knight
Joined: 13 Jun 2002 Posts: 2607 Location: The Netherlands (Amsterdam)
|
look up 'types of messages' in the Application Programming Manual,
there is a Confirmation of Arrival (COA) message _________________ Michael
MQSystems Facebook page |
|
Back to top |
|
 |
Albator |
Posted: Mon May 10, 2004 5:42 am Post subject: |
|
|
 Voyager
Joined: 04 Mar 2004 Posts: 75 Location: Toronto, Canada
|
Am'I on the right track concerning the other stuff? |
|
Back to top |
|
 |
jefflowrey |
Posted: Mon May 10, 2004 5:48 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Your client side #2 and #3 are the same queue, if you use Request messages. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
kman |
Posted: Tue May 18, 2004 12:29 am Post subject: |
|
|
Partisan
Joined: 21 Jan 2003 Posts: 309 Location: Kuala Lumpur, Malaysia
|
On a request and reply way of doing things.. the reply to the request is normally sent to the reply to queue. contact admin this by having the type of messages, a replytoqueue and replytoqueuemanager header field in MQMD. There is alos the report options for automatically sending reports.
Here is how it works.. the recommended way at least (fromt the Prog. Guides),
The sending message from the client is sent with message type REQUEST, ReplyToQ=ORDERPROCESSED, ReplyToQMgr=(the Clients Q Mgr). Report option Confirmation on Arrival is used.
Upon arrival at your server side.. the program check for the message type, then processed the request. Because the program has picked up the message.. the arrival has been confirmed. The queue manager sends the COA back, using the ReplyTo information. So it will be sent to the replyToQ named in the message header. That's why Jeff said #2 and #3 is the same queue.
Once the program has processed the message the reply is sent to the correct reply queue, using the supplied name in the replyToQ field
The requestor program then check the message in the replyq for the response. There is two type of response here. One is the report, the other is the actual reply. Message selection can be done using the msgid and correlid, but that is another discussion altogether.
Of course, you can change the way this are done. You can override the reply queue to something else, ignoring the request's replytoq name. But if you are using or asking for a report to be generated for confirmation, you need to supply the replyto information for the queue manager to send the report to.
there is a couple of sample programs that show how this is done. Take a look at those samples provided in the /Tools directory.
Good luck |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
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
|
|
|
|