我使用jsvc作为守护程序进程在centos 5.5上安装了我的tomcat版本6。运行几个小时或几天后,tomcat jsvc进程在那里休眠并使用%100的CPU资源,这显示在top命令输出屏幕中。以下是输出屏幕的详细信息。
PID USER PR NI VIRT RES SHR S %CPU %MEM COMMAND
8670 root 18 0 33.3g 32g 10m S 100.0 51.5 jsvc
我已将jvm max memory值设置为32G,而服务器盒具有64G内存,因此不要对VIRT值感到惊讶。正如您在输出消息中看到的那样,进程状态为S,这意味着睡眠。这是我的猜测,jvm使用了太多的内存,所以jvm需要很长时间来进行GC操作,这就是为什么jsvc使用%100的cpu资源。
所以之前还有其他人遇到过这个问题。任何帮助将不胜感激。感谢。
答案 0 :(得分:1)
最后,我发现程序中发生了一个死循环,它占用了所有的内存和CPU资源。
所以这个问题现在可以结束了。