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 » Best node to use instead of FlowOrder node

Post new topic  Reply to topic
 Best node to use instead of FlowOrder node « View previous topic :: View next topic » 
Author Message
ethirajesh
PostPosted: Tue Jul 19, 2011 9:55 pm    Post subject: Best node to use instead of FlowOrder node Reply with quote

Apprentice

Joined: 04 Oct 2010
Posts: 46

I have Common logger message flow which is called as a Subflow from Main flow at four different points. I have FlowOrder node which first transfers the message to logger component and transfers the same message to the service thru second terminal.

But my client dont want the message to wait until the logger component process the message, instead they need the message to flow to both the logger component and the service. I have put Compute node and connected the same out terminal to both these
flow/component. But It is not propagating any message to logger component, not sure what is the problem.

Is there any much better way to accomplish the task.

Thanks
Back to top
View user's profile Send private message
WGerstma
PostPosted: Tue Jul 19, 2011 10:09 pm    Post subject: Reply with quote

Acolyte

Joined: 18 Jul 2011
Posts: 55

If both your logger and the business service are connected at the same terminal, the message will surely be passed along the path, but you have no control, which path is choosen first.

But definitley, one path will be completed, before the other starts. There is no possibility known to me to process simultanously in two paths.

If business service is such critical (for what reason, extremly performance critical? Is the performance of your logging component so poor that it influences total transaction time?), than put the business service path to first and the logger to second. But this will yield weird results as than the last of your 4 loggers is processed first.
Back to top
View user's profile Send private message
mqsiuser
PostPosted: Wed Jul 20, 2011 12:11 am    Post subject: Decouple logging from the (actual) flow Reply with quote

Yatiri

Joined: 15 Apr 2008
Posts: 637
Location: Germany

If you can't wait for the logger to process the message, then you might want to put your (logging-)subflow into a separate (real) flow.

Just wire the first out-terminal of you FlowOrder-Node to an MQOutputNode ("LOGGER.IN") and set the (new) logger-flow to pick up the messages from the configured queue. The Logger will then work decoupled from your preexisting (actual) flow.

I have created a solution like that:
Very likely you want to do some (minor) transformation within your (actual) flow before putting the (logging-)message to "LOGGING.IN". Then you might create (in your case keep) the subflow (change/reduce it a bit, extend it with an MQOutputNode and create the according Queue) and then create the second flow, which does the main work, e.g. a DB-Access).

I have also additionally changed the following properties of the MQOutputNode "LOGGING.IN" in the (actual) flow (or the *new* logging-subflow):
Advanced -> "Transaction Mode" = "Automatic" --> "No" (Logging might/should be decoupled from the transaction of the flow)
Advanced -> "New message ID" = unchecked --> checked! (You create a new separate "logging" msg)
Advanced -> "Message context" = "Pass All" --> "Set All"
Back to top
View user's profile Send private message
paintpot
PostPosted: Wed Jul 20, 2011 1:00 am    Post subject: Reply with quote

Centurion

Joined: 19 Sep 2005
Posts: 112
Location: UK

You can also use events, outside synch points - this is fast. An asynch logging process can then log to file if you wish.

Note that typical java logging framworks pride themselves on the low impact of their use on performance - maybe your framework can be replaced with one of them, if it is non-standard / homegrown.

Have you proven the performance is bad, or is it just a 'feeling' - can it be tuned? Have you got a setting wrong? Do you actually match/exceed the customer's business SLAs anyway, and therefore you are throwing your money away.

Hours of fun
Back to top
View user's profile Send private message
mqsiuser
PostPosted: Wed Jul 20, 2011 1:07 am    Post subject: Reply with quote

Yatiri

Joined: 15 Apr 2008
Posts: 637
Location: Germany

paintpot wrote:
Hours of fun


Yes... logging and error handling is a main/core feature of a Broker-Platform and ideally is done in a generic way (usable for all or at least a lot of flows).

This should not be done quick and dirty and usually takes up quite some time.
_________________
Just use REFERENCEs
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 » Best node to use instead of FlowOrder node
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.