tomcat 进程占用了所有 CPU 和大量虚拟内存。

31 浏览
0 Comments

tomcat 进程占用了所有 CPU 和大量虚拟内存。

top显示Tomcat正在使用少量的驻留内存,但使用大量虚拟内存,有没有办法给它更多的驻留内存?我尝试了使用JAVA_OPTS和-Xmx2g,但是驻留内存仍然在250MB左右浮动。

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                            

28669 tomcat 20 0 9763m 297m 6224 S 704.4 0.6 1306:25 java

admin 更改状态以发布 2023年5月24日
0
0 Comments

指定内存分配池的最大大小的正确命令行开关是-Xmx

像这样的一个命令应该对你有用:-Xmx2gJAVA_OPTS

** 要小心为你的JVM分配非常高的内存,因为有时会导致问题。

对于你的情况,我建议您在Tomcat进程中启用远程JMX 然后一旦进程显示异常高的CPU/内存使用率,连接一个像jConsole或VisualVM这样的JMX客户端,查看是否有死锁或者运行时间非常长的线程。

0