How about create a new doc titled "Tunning/Troubleshooting" and add to
Tomcat doc?

Punky

----- Original Message -----
From: "GOMEZ Henri" <[EMAIL PROTECTED]>
To: "Tomcat Developers List" <[EMAIL PROTECTED]>
Sent: Thursday, March 21, 2002 4:14 AM
Subject: RE: DO NOT REPLY [Bug 5181] - HttpConnector [8080] No processor
available, rejecting this connection


excellent technical analyze.

should be present in tomcat faq ....

-
Henri Gomez                 ___[_]____
EMAIL : [EMAIL PROTECTED]        (. .)
PGP KEY : 697ECEDD    ...oOOo..(_)..oOOo...
PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6



>-----Original Message-----
>From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
>Sent: Wednesday, March 20, 2002 4:26 AM
>To: [EMAIL PROTECTED]
>Subject: DO NOT REPLY [Bug 5181] - HttpConnector [8080] No processor
>available, rejecting this connection
>
>
>DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG
>RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
><http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5181>.
>ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND
>INSERTED IN THE BUG DATABASE.
>
>http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5181
>
>HttpConnector [8080] No processor available, rejecting this connection
>
>
>
>
>
>------- Additional Comments From [EMAIL PROTECTED]  2002-03-20
>03:26 -------
>I have not run into this problem using the Tomcat HTTP
>connector, but I have
>seen similar problems when using mod_jk to connect to Tomcat
>via AJP on a
>server with heavy load.
>
>In my case, after alot of detective work, I determined that
>Tomcat itself
>was not the problem.
>
>There are alot of things which can affect the ability of
>Tomcat to handle
>a request regardless of whether they come from its own HTTP
>connector or
>from Apache via AJP.
>
>You may have already looked at one or more of the following
>issues, I will
>include everything just for completeness.
>
>The first thing I found is that JVM garbage collection can
>have a significant
>intermittent effect on Tomcat.  When GC occurs processing by
>Tomcat freezes,
>yet the OS will continue to accept requests on the port.  When
>GC has completed,
>Tomcat will try to handle all pending requests.  If the GC
>took a significant
>amount of time, this can cause a cascading affect where Tomcat
>runs out of
>processors to handle requests.  I made the mistake of setting
>the JVM -Xmx
>too large.  The JVM ended up using more memory than the OS
>would keep in
>physical memory, when a Full GC occurred, performing GC on
>objects swapped
>out to disk caused GC to take a significant amount of time.
>In my case,
>70 seconds.  Decreasing the -Xmx to make sure the JVM stack was always
>resident in physical memory fixed the problem.
>
>JVM Memory Usage and Garbage Collection
>---------------------------------------
>
>It is very important to tune the JVM startup options for GC
>and JVM memory
>usage for a production server.
>
>1. Make sure you are running Tomcat with a JVM that supports
>Hotspot -server,
>   I use 1.3.1_02.
>
>2. Use incremental GC, the -xincgc java startup option.
>
>3. Try running Tomcat with the -verbose:gc java arg so you can collect
>   data on GC.
>
>4. Make sure the OS is keeping all JVM stack in physical memory and not
>   swapping it out to disk.  Reduce -Xmx if this is a problem.
>
>5. Try setting -Xms and -Xmx to the same size.
>
>6. Search the fine web for articles on JVM GC and JVM
>performance tuning.
>
>After researching and testing all of the above I significantly
>reduced the
>maximum time for GC's.  99% of my GC's now run in < .05 sec,
>of the remaining,
>most run at < 1 sec, no more than 5-10 times a day do I see a
>GC > 1 sec,
>and they never exceed 5 sec.
>
>dB access by applications
>-------------------------
>
>If your applications uses a db, make sure you set it's
>connection timeout
>to a value > the max GC time you see.  Otherwise you will start seeing
>db connection failures.  I set my db connection timeouts to 10 seconds.
>
>A problem with your database, or if you frequently reach the maxiumum
>connections you allow in a db connection pool can cause the type of
>problems you see.  If the db connections fail, or your connection pool
>is exhaused, each servlet which is waiting for a connection (remember
>I recommended 10 seconds) will eat up an HTTP or AJP processor
>for 10 seconds.
>This can cause a cascading effect where you see alot of processors used
>by Tomcat.
>
>Check your web applications for thread locking problems, or
>long delays.
>-----------------------------------------------------------------------
>
>Tomcat can't do anything useful by itself, its the applications you
>install that provide the content.  There could very well be
>thread locking
>problems or other bugs which cause delays in a servlet
>handling a request.
>This can cause Tomcat to appear to fail due to runaway use of
>Processors.
>
>Increase maxProcessors
>----------------------
>
>Increase your maxProcessors to handle intermittent cascading
>of requests
>due to GC, etc.  I set my maxProcessors to 2X max concurrent requests
>I see under heavy load.
>
>Proposition for a change to Processors to help debug these problems
>--------------------------------------------------------------------
>
>Adding code to Processors so that they dump a stack trace for each
>existing thread when the pool of processors is exhausted could provide
>valuable information for tracking down the source of problems in
>a web application or tomcat.  With a stack trace dump for each thread
>you may be able to tell where the problem is.
>
>I will be committing some code for the mod_jk AJP processor which
>does this.
>
>And my comments here could be used as the start of a performance tuning
>document for Tomcat. AKA, Before you report a bug in Tomcat. :-)
>
>--
>To unsubscribe, e-mail:
><mailto:[EMAIL PROTECTED]>
>For
>additional commands, e-mail:
><mailto:[EMAIL PROTECTED]>
>
>

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>


_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to