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 » New features with MQ V7.0 JMS

Post new topic  Reply to topic
 New features with MQ V7.0 JMS « View previous topic :: View next topic » 
Author Message
kevinQ
PostPosted: Mon Dec 15, 2008 7:45 pm    Post subject: New features with MQ V7.0 JMS Reply with quote

Novice

Joined: 09 Apr 2008
Posts: 21

Hello, MQ gurus,

We are facing a chanllenge from the JMS adapter of a client application opening thousands of client connections to MQ. One of the recommendation is to upgrade to MQ V7. The JMS enhancement of V7 supposedly has the ability to share client connections as long as the sessions are opened using the same connection.

I have a couple of questions, would appreciate if anybody provide any insight or experience with the new feature.
1) To take advantage of this, do we have to install the new MQ V70 JMS classes, and hence the new MQ V70 client on the client application side.
2) Do we have to upgrade the MQ server side to MQ V70 too, or will this new client side JMS feature also apply to older versions (V6) of server side.

Here is some more details, from chapter 7 of the red book, "MQ V7.0 new features":

In previous versions of WebSphere MQ, each instance of the JMS session created by the same parent JMS connection would use a different socket connection to connect to a queue manager. No two JMS sessions shared a socket connection. JMS applications using multiple threads tend to create several JMS session objects from a single connection object for parallel processing of messages. This resulted in a new TCP/IP socket connection being established for every JMS session and more I/O resource utilization on both the application machine and the queue manager machine. This is depicted in Figure 7-5.

With the introduction of conversation sharing in WebSphere MQ V7.0, multiple JMS sessions created from the same connection can be multiplexed across a single TCP/IP socket, as depicted in Figure 7-6. This means that a JMS application creating multiple JMS sessions from a single connection object may now use a single TCP/IP socket. A consequence is that both ends of the socket now have threads which are always receiving data on the socket. This allows heartbeats to travel down the socket from both the ends. In the event of an I/O failure, the WebSphere MQ JMS classes can immediately identify the connection breaking. The JMS application can be more responsive in identifying the failure at all times and not just when an MQGET is outstanding. Conversation sharing thereby reduces the dependency of KEEPALIVE on TCP/IP to detect failures
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Mon Dec 15, 2008 7:51 pm    Post subject: Re: New features with MQ V7.0 JMS Reply with quote

Grand High Poobah

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

kevinQ wrote:
Hello, MQ gurus,

We are facing a chanllenge from the JMS adapter of a client application opening thousands of client connections to MQ. One of the recommendation is to upgrade to MQ V7. The JMS enhancement of V7 supposedly has the ability to share client connections as long as the sessions are opened using the same connection.

It is commendable that you look at alternate solutions.
However first I would like you to specify what your topology is, and what causes you to have thousands of client connections.
Are you sure that your application is well behaved and closes the connections as soon as they are no longer needed in order to release the resource?

Have fun
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
kevinQ
PostPosted: Mon Dec 15, 2008 8:03 pm    Post subject: Re: New features with MQ V7.0 JMS Reply with quote

Novice

Joined: 09 Apr 2008
Posts: 21

fjb_saper wrote:

It is commendable that you look at alternate solutions.
However first I would like you to specify what your topology is, and what causes you to have thousands of client connections.
Are you sure that your application is well behaved and closes the connections as soon as they are no longer needed in order to release the resource?

Have fun


Very good point ... we did have to set the "KeepAlive" paramter to close the unused channels, so the remaining thousands (currently only hundreds, and as the project gets rolled out, it will become thousands) connections are active connections that need to stay.
Back to top
View user's profile Send private message
manicminer
PostPosted: Tue Dec 16, 2008 1:03 am    Post subject: Re: New features with MQ V7.0 JMS Reply with quote

Disciple

Joined: 11 Jul 2007
Posts: 177

kevinQ wrote:

I have a couple of questions, would appreciate if anybody provide any insight or experience with the new feature.
1) To take advantage of this, do we have to install the new MQ V70 JMS classes, and hence the new MQ V70 client on the client application side.
2) Do we have to upgrade the MQ server side to MQ V70 too, or will this new client side JMS feature also apply to older versions (V6) of server side.


To answer your specific questions, you have to upgrade to both a V7 server and a V7 client to take advantage of these features because they are a re-worked way of connecting to the server which will require both client and server side support.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Tue Dec 16, 2008 3:00 am    Post subject: Re: New features with MQ V7.0 JMS Reply with quote

Grand High Poobah

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

kevinQ wrote:
we did have to set the "KeepAlive" parameter to close the unused channels, so the remaining thousands (currently only hundreds, and as the project gets rolled out, it will become thousands) connections are active connections that need to stay.


My point is that you should not have to set "KeepAlive" to close unused channels. This should be the responsibility of the application. It doesn't hurt to set Keep Alive on top of it but this should definitely not be your default way of disconnecting. What about uncommitted transactions where the connection gets disconnected?

Have your developers go back to the drawing board until they have satisfied the rule: When no longer needed the MQ resource needs to be released (closed). You cannot leave the close of the resource to the garbage collector. This is just asking for trouble.

You should then see the true usage of the resource and be able to anticipate what the number of needed connections are in prod. You will probably need to bump up MAXChannels for that.

And don't forget, each application needs its own channel if using client connections, so that you as admin can shut them down separately.

Have fun
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
kevinQ
PostPosted: Tue Dec 16, 2008 8:43 am    Post subject: Reply with quote

Novice

Joined: 09 Apr 2008
Posts: 21

Thanks for the feedback, manicminer. To upgrade MQ on server side, we need to first upgrade the OS, oh well ...

fjb_saper, I agree 100% with you, this application is not behaving well, and the developers need to take care of their business. Unfortunately, this app is from this company called SAP (I see that as part of your name ), and it takes them long time to deliver a fix like this, but we need to deliver the project at the same time ...
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Tue Dec 16, 2008 10:47 am    Post subject: Reply with quote

Grand High Poobah

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

kevinQ wrote:
Thanks for the feedback, manicminer. To upgrade MQ on server side, we need to first upgrade the OS, oh well ...

fjb_saper, I agree 100% with you, this application is not behaving well, and the developers need to take care of their business. Unfortunately, this app is from this company called SAP (I see that as part of your name ), and it takes them long time to deliver a fix like this, but we need to deliver the project at the same time ...

You mean SAP XI?
Remember that SAP does thing a little bit differently and is optimized for the use of SAP JMS. You could always write a SAP/MQ bridge...


_________________
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 » IBM MQ Java / JMS » New features with MQ V7.0 JMS
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.