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 » MQ Output to JMS Client

Post new topic  Reply to topic
 MQ Output to JMS Client « View previous topic :: View next topic » 
Author Message
jayZ
PostPosted: Tue Sep 17, 2013 7:04 am    Post subject: MQ Output to JMS Client Reply with quote

Acolyte

Joined: 03 Jun 2008
Posts: 71

Our organization uses a 3rd party tool to handle audit and exception handling for every integration. To do that, we have a set of message flows that integrate with the 3rd party tool. As you'd expect, we see a large volume of messages of varying size through that message flow, approximately 23 million per day.

Recently, the flow that processes those audits has been identified as one that uses a more CPU than it should, based on an assessment from our admin team. Using QPasa, an analysis of that flow determined that, contrary to what one might expect, it is the JMSOutput node that is consuming most of the CPU cycles in that message flow.

Given that info, I have been searching for a way to use an MQOutput node, which uses much less CPU, to perform the same task. Ultimately, this flow just puts to a WebSphere MQ Queue, where a JMS Client retreives it. I was under the assumption that, if I get the headers right, it should be possible for an MQ Client (in this case the Output node) to post a JMS Message. The infocenter documentation on MQ to JMS mapping is pretty good, plus there are the transform nodes that do all of that for you. The problem is, no matter how I map the headers (MQJMSTransform with an MQOuput, JMSMQTransform with an MQOutput), the client cannot consume the message.

    1) Is it even possible for a JMS Client to consume a message put with an MQOutput?
    2) Is there performance tuning on the JMSOutput that isn't obvious from the infocenter?


I've poured through the infocenter and know that the JMSOutput was created to put messages for JMS Clients, but need to know for a fact it won't work with the MQOutput.

I think I've included things I've tried in this long winded expanation, but would be happy to list them if needed to avoid any of the inevitable snark coming my way. The consuming app isn't giving me a ton to go on, but I really just need to know the answers to the questions in bold.

--Message Broker 7, AIX
Any help would be much appreciated.
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Tue Sep 17, 2013 7:08 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

Yes, you can use MQOutput to put a JMS message, as long as you code the proper headers. JMSOutput has the advantage of doing some of this header work for you.

Performance is not an issue here. Both output nodes should be performant.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
jayZ
PostPosted: Tue Sep 17, 2013 7:14 am    Post subject: Reply with quote

Acolyte

Joined: 03 Jun 2008
Posts: 71

Thanks, I'll keep plugging away at getting the headers right. I thought that was the case, but being the 3rd person thrown at it, didn't want to bang my head against the wall.

Under 99% of our other scenarios, both nodes perform perfectly for our solution. What we've seen, and had confirmed by IBM, is that the JMSOutput node does consume more than the MQOutput. Apparently, under this much load that extra consumption gets magnified.
Back to top
View user's profile Send private message
jayZ
PostPosted: Thu Oct 24, 2013 7:44 am    Post subject: Reply with quote

Acolyte

Joined: 03 Jun 2008
Posts: 71

I think I have found a mistake in the documentation, but wanted to run it by the forum in case I mistunderstood something. Specifically, I am referring to the JMSType syntax. According to the infocenter article 'Specifying namespaces in the Message Type property', the syntax for the JMS Type is
Quote:
{http://www.ibm.com/space}:name
. However, when the MQJMSTransform translates that field, it escapes all of the forward slashes with @fsl@. That same field should read
Quote:
{http:@fsl@@fsl@www.ibm.com@fsl@space}:name


If not formatted like that, the consuming JMS client fails.

My question is, if I am manually creating my JMS header, should I just use a REPLACE function to escape those characters or is there a more appropriate way? I am unfamiliar with that escape syntax and don't know if just the one replace will work in all scenarios.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Fri Oct 25, 2013 4:39 am    Post subject: Reply with quote

Grand High Poobah

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

Have you tried instead, having a simple flow consuming a JMSMessage from an MQInput node and checking out what the headers look like (i.e. RFH header?) Unless your JMS app does something "funny", generating the right RFH header should be enough...
And if you don't use properties, you could just send an MQ message without RFH header... but with the right MQFMT_<xxx> constant in the format field of the MQMD...

Have fun
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » MQ Output to JMS Client
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.