Tomcat6 jk-8009服务使用100%CPU
Tomcat6 jk-8009 service using 100% CPU
我遇到 tomcat6 的问题,当我 "top -H" 时,我可以看到 3 java 个线程 运行 处于 100% CPU。
我查看了 tomcat 使用 PSI-probe 做了什么,在 "Connectors" 选项卡中,在 jk-8009 下,我可以看到以下 3 行:
远程 IP 阶段 Proc.time IN OUT URL
192.168.10.11 服务 20:02:17.105 522 B 0 B POST /configuration.jsf
192.168.10.11 服务 20:02:17.171 447 B 0 B POST /configuration.jsf
192.168.10.11 服务 20:02:17.167 447 B 0 B POST /configuration.jsf
top命令显示,100%的3个进程已经运行1197分钟,似乎对应上面3行显示的20:02分钟。所以我很确定这 3 个服务是问题所在。
声明的 /configuration.jsf 是应用程序的主页,因此它可以是任何内容。
重启tomcat解决了问题,但我需要找出问题的原因。
我在日志中看不到崩溃。
我在互联网上四处张望,在我看来这可能是数据库中的一个死锁。
该应用程序使用 JSF、Prime Faces。
数据库是mysql
有人可以就此事发表意见吗?
编辑:
在/etc/tomcat6/server.xml,我有这个配置
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
使用阻塞 Java 连接器在 Tomcat 8.0.21:
中为我解决了这个问题
<Connector port="8009" protocol="org.apache.coyote.ajp.AjpProtocol" redirectPort="8443" />
现在 CPU 在没有使用时保持在大约 0.3%。使用 AjpNio2Protocol
得到与 CPU 相同的结果,但在我的性能测试中 AjpProtocol
更快一些。
https://tomcat.apache.org/tomcat-8.0-doc/config/ajp.html#Connector_Comparison
我遇到 tomcat6 的问题,当我 "top -H" 时,我可以看到 3 java 个线程 运行 处于 100% CPU。 我查看了 tomcat 使用 PSI-probe 做了什么,在 "Connectors" 选项卡中,在 jk-8009 下,我可以看到以下 3 行:
远程 IP 阶段 Proc.time IN OUT URL
192.168.10.11 服务 20:02:17.105 522 B 0 B POST /configuration.jsf
192.168.10.11 服务 20:02:17.171 447 B 0 B POST /configuration.jsf
192.168.10.11 服务 20:02:17.167 447 B 0 B POST /configuration.jsf
top命令显示,100%的3个进程已经运行1197分钟,似乎对应上面3行显示的20:02分钟。所以我很确定这 3 个服务是问题所在。
声明的 /configuration.jsf 是应用程序的主页,因此它可以是任何内容。
重启tomcat解决了问题,但我需要找出问题的原因。
我在日志中看不到崩溃。 我在互联网上四处张望,在我看来这可能是数据库中的一个死锁。
该应用程序使用 JSF、Prime Faces。 数据库是mysql
有人可以就此事发表意见吗?
编辑:
在/etc/tomcat6/server.xml,我有这个配置
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
使用阻塞 Java 连接器在 Tomcat 8.0.21:
中为我解决了这个问题<Connector port="8009" protocol="org.apache.coyote.ajp.AjpProtocol" redirectPort="8443" />
现在 CPU 在没有使用时保持在大约 0.3%。使用 AjpNio2Protocol
得到与 CPU 相同的结果,但在我的性能测试中 AjpProtocol
更快一些。
https://tomcat.apache.org/tomcat-8.0-doc/config/ajp.html#Connector_Comparison