Title: Message
The client is on Linux, but the server is on Windows.  I want to keep them separate since our server also opens many sockets, and I don't want to confuse the two.
 
I'm not running under any container - our app embeds Axis and is not neccesarily run inside any container (though it could be). 
 
I'm running a test which opens 100 concurrent threads, each communicating with a server using Axis.  At any given time, netstat shows approxiamtely 100 connections in the ESTABLISHED state, and some number of connections in CLOSE_WAIT.  The sockets in the CLOSE_WAIT state do eventually go away, but it takes way too long.
 
If Axis is not calling close() until the finalizer, does anyone know how to force it to call close().  If the JVM is the root cause, I guess I'm out of luck...
 
Thanks for your help so far.
Mike Ryan
-----Original Message-----
From: Jason Cwik [mailto:[EMAIL PROTECTED]
Sent: Monday, December 12, 2005 12:25 PM
To: [email protected]
Subject: Re: Large numbers of sockets in CLOSE_WAIT on Linux

I've seen sockets lingering in CLOSE_WAIT on Linux, but only when the *server* is on Linux.  Your email indicates that your client is on linux?  Where is the server?  Also, what web container are you running your Axis under?  Tomcat, Websphere?

I ran 30,000 test calls in 5 minutes against my Linux Axis server, and there was a bunch of CLOSE_WAIT sockets, but they eventually disappeared, probably when the finalizer ran.  It's possible that the web container or JVM doesn't actually close() the native socket until it's finalized.

On 12/12/05, Michael Ryan < [EMAIL PROTECTED]> wrote:
We are seeing large numbers of sockets lingering in the CLOSE_WAIT state (waiting for the client to issue a close() call) while running our client application on Linux.  The problem does not seem to occur on Windows or Solaris, or at least is not nearly as obvious on Solaris.  When the process ends, the sockets are all closed, so it does not appear to be an operating system bug.  It does appear that the sockets are eventually closed, but that leads me to believe that they are being left around for the garbage collector to deal with.
 
Does anyone have any insight into this?  I read several other peoples messages regarding this, so I am not the only one experiencing this.  Is there a way to force the Axis client to call close()?  Is this a JVM issue?
 
Thanks for any help.
Mike Ryan

Reply via email to