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 » J2EE-JMS pool and client channel unreleased connections

Post new topic  Reply to topic
 J2EE-JMS pool and client channel unreleased connections « View previous topic :: View next topic » 
Author Message
bcostacurta
PostPosted: Tue Jul 19, 2011 7:00 am    Post subject: J2EE-JMS pool and client channel unreleased connections Reply with quote

Acolyte

Joined: 10 Dec 2009
Posts: 71
Location: Luxembourg

Hello,

one of my client has a J2EE application hosted on WAS v7 using MQSeries v6 on Unix.
Briefly, the JMS pool connection setups are :

- Aged Timeout=900
- REAP=1800.
- Minimum connection is 1, max is 10.

However the connections on the channel client used by the application (Message Drive Bean) are not released as a lot of (all ?) connections remains opened for days until its client channel is stop in mode Force to avoid saturation of MaxActiveChannels.

In which direction can I dig for this type of problem ?
Is there a way to trace more deeply the client channel opened connection and activity ?
Some impact of Timeout and Keep Alive on the IP setup ?
The MQseries use dthe KeepAlive = YES stanza in qm.ini

Unfortunately as an outsourcing company we do not have the code of this application from one of our client.

Thanks for any clue or idea.

Bye,
Bruno
Back to top
View user's profile Send private message
George Carey
PostPosted: Tue Nov 01, 2011 2:44 pm    Post subject: same problem space Reply with quote

Knight

Joined: 29 Jan 2007
Posts: 500
Location: DC

Ok, I am in the same problem space as this person (and I see he got a lot of responses) but I will try anyway.

I too am getting channels connections that build up over time from an app server client connections to MQ QMGR. The app server is Oracle (not WLS) and the Oracle RA is being used and the MQ client Jar files are version 7.0 (not sure may be some version of 6.x). But have a similar problem as above post where client channel connections grow over time. An app server java bean is used to put a soap message to a request queue and an MDB is used to listen for incomnig response soap messages and failures on reading the soap message put the bad message out to an error queue.

So I would think that the likely number of channels from this appserver would be three. One in the MQGET substate and two in the Receiving substate for the three separate queues.

However, I see 1, then I see 2 , then I see 3, then they seem stable for a while then I see them grow over time slowly.

The MDB and regular bean appear to have code that does appropriate closing and disconnections.

But lets start with the basics, how many connections should I see initially at start up and what determines the number of initial client connections when the containers for these Beans are started ?

I am trying to get to square one numbers and go from there. Not an appserver admin and can't get answer to this question from those that 'supossedly' are ??

Any feedback appreciated.
_________________
"Truth is ... grasping the virtually unconditioned",
Bernard F. Lonergan S.J.
(from book titled "Insight" subtitled "A Study of Human Understanding")
Back to top
View user's profile Send private message Visit poster's website AIM Address
fjb_saper
PostPosted: Tue Nov 01, 2011 8:23 pm    Post subject: Reply with quote

Grand High Poobah

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

OK... There is out somewhere an article (maybe from developerworks) that specifies what you should set as pool reap parameters if you are doing XA.

I suspect strongly that your left over connections may be connections that were reaped by the pool before the final commit could be issued...by the app server (XA).

Does the qmgr think it has long running transactions?

Have fun
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
George Carey
PostPosted: Thu Nov 03, 2011 10:05 am    Post subject: transactions Reply with quote

Knight

Joined: 29 Jan 2007
Posts: 500
Location: DC

1st, Thanks for bothering to respond.

No there are no open transactions on any of the queues. And in general there should be no long running transactions.

Not sure how a 'pool reaper' should work but I would think it would not reap any JMS connection pool thread/session not released to the pool unless a sizable timer had expired or some other signaling/alerting attribute on/about the thread/session had occured.

A simple JMS send/put ,whatever, to a request queue is being done and an MDB On Message() method getting from a response queue which hands off quickly with no real business processing logic to speak of going on in the method are the interactions with the QMGR from the app server.

I am trying to figure out initially just how many client channels should be active with the previous description given. And then maybe find out why/how/when new ones should be initiated. Easy to say not so easy to find out.

GTC
_________________
"Truth is ... grasping the virtually unconditioned",
Bernard F. Lonergan S.J.
(from book titled "Insight" subtitled "A Study of Human Understanding")
Back to top
View user's profile Send private message Visit poster's website AIM Address
fjb_saper
PostPosted: Thu Nov 03, 2011 11:35 am    Post subject: Reply with quote

Grand High Poobah

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

As a rule of thumb:
  • for each mdb: number of max instances + 1
  • for each mdb needing to send a reply ... 2*number of max instances + 1
  • for each "put" i.e. non mdb connections, max number of concurrent occurrences (sessions?)

Hopes that helps some in your count...

Now of course you can bunch in V7 using shareconversations but then the rule is still valid for the number of conversations...
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
George Carey
PostPosted: Thu Nov 03, 2011 12:59 pm    Post subject: max instances Reply with quote

Knight

Joined: 29 Jan 2007
Posts: 500
Location: DC

When you say max instances what are you referring to ?

Max number of MDB bean instances or something else ? If so is that an app server config item ?

If it is MDB bean instances and say max was 1 (?) then the count for the number of client channels to start would be 2 and if needing to do a reply 3 ?

Like wise the max number of concurrent occurences(sessions) where is that set ? Again an app server config item ?

GTC
_________________
"Truth is ... grasping the virtually unconditioned",
Bernard F. Lonergan S.J.
(from book titled "Insight" subtitled "A Study of Human Understanding")
Back to top
View user's profile Send private message Visit poster's website AIM Address
fjb_saper
PostPosted: Thu Nov 03, 2011 7:21 pm    Post subject: Re: max instances Reply with quote

Grand High Poobah

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

George Carey wrote:
When you say max instances what are you referring to ?

Max number of MDB bean instances or something else ? If so is that an app server config item ?
Yes, that's right

George Carey wrote:
If it is MDB bean instances and say max was 1 (?) then the count for the number of client channels to start would be 2 and if needing to do a reply 3 ?
you got it.

George Carey wrote:
Like wise the max number of concurrent occurrences(sessions) where is that set ? Again an app server config item ?

GTC

Yes the max number of sessions is an app server config. Be aware that this is a potential max number. For it to be effective, each session would need to access MQ at the same time. I do not expect this to happen as I'm sure your users have other pages to use and view... but the potential is there.

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 » IBM MQ Java / JMS » J2EE-JMS pool and client channel unreleased connections
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.