小编典典

进程内存与堆— JVM

linux

我们在 Tomcat
服务器上部署了一个Web应用程序。我们运行某些计划的作业,然后堆内存达到峰值并稳定下来,一切似乎都很好。但是,系统管理员抱怨内存使用率(Linux上的“
top”)随着计划的作业的增加而不断增加。堆内存和CPU内存之间有什么关联?可以通过任何JVM设置来控制它吗?我使用 JConsole 监视系统。
我通过JConsole强制进行垃圾收集,并且堆使用率下降了,但是 Linux 上的内存使用率仍然很高,并且从未减少。

有什么想法或建议会很有帮助吗?


阅读 311

收藏
2020-06-03

共1个答案

小编典典

可能观察到的是Java进程的虚拟大小而不是驻留集的大小?如果您的目标是小占用空间,则可能不希望在JVM堆参数中包含或任何最小大小,
而是-Xms将70%调整-XX:MaxHeapFreeRatio=为较小的数字以允许更大的堆收缩。

同时,提供有关Linux内存从未减少的注释的更多详细信息?什么指标?

2020-06-03