tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bill Miller" <millebi.subscripti...@gmail.com>
Subject RE: high CPU usage on tomcat 7
Date Thu, 27 Sep 2012 18:11:26 GMT
I agree; we have reproducible instances where PermGen is not set to our
requirements on the Tomcat startup parameters and it will cause a "lockup"
every time. Do some JMX monitoring and you may discover a memory spike
that's killing Tomcat.

Bill
-----Original Message-----
From: Jeff MAURY [mailto:jeffmaury@gmail.com] 
Sent: September-27-2012 2:01 PM
To: Tomcat Users List
Subject: Re: high CPU usage on tomcat 7

This is probably due to out of memory, I have the same problem on my ubuntu
ci machine Did you monitor your tomcat with jmx ?

Jeff
Le 27 sept. 2012 17:39, "Kirill Kireyev" <kirill@instagrok.com> a écrit :

> Hi!
>
> I'm periodically getting unduly high (100%) CPU usage by the tomcat 
> process on my server. This problems happens intermittently, several 
> times a week. When the server goes into this high CPU it does not come 
> back (and becomes unresponsive to new requests), and the only recourse 
> is to restart the tomcat process.
>
> I'm using Tomcat 7.0.30, with APR and Apache web server, on a Ubuntu 
> 11.10 server with 32g of RAM / 8 CPUs.
>
> I've done several jstack stack traces when this occurs, and what I 
> consistently see, are the connector threads in the RUNNABLE state 
> every time, i.e.:
>
> ajp-apr-8009-Acceptor-0" daemon prio=10 tid=0x00000000010a1000 
> nid=0x539 runnable [0x00007f9364f8e000]
>    java.lang.Thread.State: RUNNABLE
>         at org.apache.tomcat.jni.Socket.**accept(Native Method)
>         at org.apache.tomcat.util.net.**AprEndpoint$Acceptor.run(**
> AprEndpoint.java:1013)
>         at java.lang.Thread.run(Thread.**java:722)
>
> "http-apr-8443-Acceptor-0" daemon prio=10 tid=0x000000000109b800 
> nid=0x535 runnable [0x00007f9365510000]
>    java.lang.Thread.State: RUNNABLE
>         at org.apache.tomcat.jni.Socket.**accept(Native Method)
>         at org.apache.tomcat.util.net.**AprEndpoint$Acceptor.run(**
> AprEndpoint.java:1013)
>         at java.lang.Thread.run(Thread.**java:722)
>
> "http-apr-8080-Acceptor-0" daemon prio=10 tid=0x00000000015ab000 
> nid=0x531 runnable [0x00007f9365a92000]
>    java.lang.Thread.State: RUNNABLE
>         at org.apache.tomcat.jni.Socket.**accept(Native Method)
>         at org.apache.tomcat.util.net.**AprEndpoint$Acceptor.run(**
> AprEndpoint.java:1013)
>         at java.lang.Thread.run(Thread.**java:722)
>
> Other threads are in RUNNBLE too in different cases, but these are the 
> one that are always there when the high CPU occurs. That's why I'm 
> starting to think it has something to do with Tomcat.
>
> Can anyone shed some light on this? My current Connector 
> configurations in server.xml are:
>  <Connector port="8080" protocol="org.apache.coyote.** 
> http11.Http11AprProtocol"
>                connectionTimeout="20000"
>                maxThreads="500" minSpareThreads="10" maxSpareThreads="20"
>                redirectPort="8443"
>                pollTime="100000" />
> ...
> <Connector port="8443" protocol="org.apache.coyote.** 
> http11.Http11AprProtocol"
>             maxThreads="200" scheme="https" secure="true"
SSLEnabled="true"
>             SSLCACertificateFile="**********"
>             SSLCertificateKeyFile="**********"
>             SSLCertificateFile="*******"
>             enableLookups="false" clientAuth="false" sslProtocol="TLS"
>             pollTime="100000" />
> ...
> <Connector port="8009" protocol="AJP/1.3" redirectPort="8443"
>            acceptCount="100" connectionTimeout="5000"
> keepAliveTimeout="20000"
>            disableUploadTimeout="true" enableLookups="false"
>            maxHttpHeaderSize="8192"
>            maxSpareThreads="75" maxThreads="150"
>            minSpareThreads="25"
>            executor="default" />
>
> Thanks a lot!
> -Kirill
>
> ------------------------------**------------------------------**------
> --- To unsubscribe, e-mail: 
> users-unsubscribe@tomcat.**apache.org<users-unsubscribe@tomcat.apache.
> org> For additional commands, e-mail: users-help@tomcat.apache.org
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Mime
View raw message