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 » New Idea

Post new topic  Reply to topic
 New Idea « View previous topic :: View next topic » 
Author Message
NewMB
PostPosted: Thu Mar 03, 2005 12:08 pm    Post subject: New Idea Reply with quote

Apprentice

Joined: 05 Jan 2005
Posts: 42

I am designing a flow to pass and reformatti messages between System A and B. Here is the scenario.

System A sends a request message "MQMD + System A header + Body" to Message Broker, and Message Broker will reformat the message and send it to System B.

Now, System B sends back a reply Message "MQMD + System B header + Body" to Message Broker, and Message Broker will reformat and send it to System A.

Problem: In order to pass back the message from System B to System A. I need the System A header but it is not contained in the reply message from System B. So, I need to save the System A header when the request message first arrives to Message Broker to somewhere. But I don't know where.......

**** I know database could help but it is not an option because of large volume of messages (insert and delete sql commands).
Back to top
View user's profile Send private message
EddieA
PostPosted: Thu Mar 03, 2005 12:26 pm    Post subject: Reply with quote

Jedi

Joined: 28 Jun 2001
Posts: 2453
Location: Los Angeles

If you need the information to be "persistent", then a DB is the only way to go. Or, maybe, the withdrawn MQGet node, which if you search this forum you can find information of how people have got it to work on V5.

Otherwise, look at one of the Cache node SupportPacs.

Cheers,
_________________
Eddie Atherton
IBM Certified Solution Developer - WebSphere Message Broker V6.1
IBM Certified Solution Developer - WebSphere Message Broker V7.0
Back to top
View user's profile Send private message
NewMB
PostPosted: Thu Mar 03, 2005 12:36 pm    Post subject: Reply with quote

Apprentice

Joined: 05 Jan 2005
Posts: 42

Thanks for the reply. I will definitely look into it. thanks
Back to top
View user's profile Send private message
JT
PostPosted: Thu Mar 03, 2005 1:21 pm    Post subject: Reply with quote

Padawan

Joined: 27 Mar 2003
Posts: 1564
Location: Hartford, CT.

We use the IA91 Broker Domain Data Store supportpac for a similar scenario, i.e. a messageflow processing the reply message requires data that was present on the request message.

Our preferred method is to somehow append that data to the payload of the message. When that proves to be ineffective, our second preference is to use the memory store. Since the data we store is generally minimal in size and it doesn't have a persistency requirement (to surive an outage), we prefer the memory storage over a database solution based on its superior performance.
Back to top
View user's profile Send private message
TonyD
PostPosted: Thu Mar 03, 2005 1:47 pm    Post subject: Reply with quote

Knight

Joined: 15 May 2001
Posts: 540
Location: New Zealand

Consider using Aggregate nodes to pass the header info in a message directly to the flow that reads system Bs reply. The fan-in comprises the reply and the header message.
Back to top
View user's profile Send private message Send e-mail
jfluitsm
PostPosted: Sat Mar 05, 2005 9:19 am    Post subject: Reply with quote

Disciple

Joined: 24 Feb 2002
Posts: 160
Location: The Netherlands

Another possibility is to add a RFH or RFH2 header.
Applications have to allow this and return all header information not ment for them.
So in your case B gets the header from A, doesn't know what ot do with it and returns the information in the reply.
Using RFH or RFH2 for header information has also the benefit of not mixing the mostly technical information with the business data in the message.
_________________
Jan Fluitsma

IBM Certified Solution Designer WebSphere MQ V6
IBM Certified Solution Developer WebSphere Message Broker V6
Back to top
View user's profile Send private message Send e-mail
bim_newbie
PostPosted: Mon Mar 07, 2005 1:27 pm    Post subject: Reply with quote

Newbie

Joined: 16 Feb 2005
Posts: 8

If you do not want the complete header, may be you want to introduce a UserData section in both the headers and the systems will simply pass it back with out any modifications.
Back to top
View user's profile Send private message
NewMB
PostPosted: Wed Mar 09, 2005 9:44 am    Post subject: Reply with quote

Apprentice

Joined: 05 Jan 2005
Posts: 42

TonyD:

I thought of using Aggregrate nodes before but how does the flow knows which message it should pick from a queue? Unless I go to User-Defined node to get message from a queue by matching CorrelID.

jfluitsm and bim_newbie:

I also considered using MQ headers (RFH, RFH2 and usr) to store the header but that will require a huge change from the back-end.

New question:

I deployed IA91 Broker Domain Data Store Support pac to my toolkit and Message Broker engine (Windows XP and 2003 Server).

1. I am using a compute node to add value to the environment
SET Environment.Variables.go[1].key = 'AAA';
SET Environment.Variables.go[1].data = 'BBB';

2. A CachePut node is right after the compute node and location of key and data are specified as:

Key = Environment.Variables.go.key
Data = Environment.Variables.go.data.

3. The message is sent to a queue (MQOutput).

Now, when I try to get the cache data from the other flow, I receive nothing.

Here is the flow design for retrieving cache data.

1. A MQInput node to start the flow.
2. A CacheGet node and location of key and data are specified as the
CachePut node.
3. A MQOutput node.

The message generated out from the retrieve flow doesn't have the cache data and I couldn't find anything available info from IBM that can help me to debug. Does anyone successfully implement a flow using CacheGet and CachePut node? If so, would you be able to explain how your flow put and get Cache data?

Thanks
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Wed Mar 09, 2005 9:52 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

NewMB wrote:
New question

It's easier on the rest of us if new questions go in new threads - and those threads have relevant titles, like "Problem using IA91".
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
JT
PostPosted: Wed Mar 09, 2005 9:57 am    Post subject: Reply with quote

Padawan

Joined: 27 Mar 2003
Posts: 1564
Location: Hartford, CT.

What's the 'scope of the cache', broker domain or execution group? If it's broker domain, you need to implement a message flow with a RealTimeOptimizedFlow node, because MQ Real-time transport is used to communicate between brokers.

Also, I don't think the plug-in supports the Environment tree for key and data references. We've been successfully using the Root tree
Back to top
View user's profile Send private message
NewMB
PostPosted: Wed Mar 09, 2005 10:34 am    Post subject: Reply with quote

Apprentice

Joined: 05 Jan 2005
Posts: 42

Thanks Jeff, I will post it as a new topic.

Thanks
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 » New Idea
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.