如何查找Java堆大小和使用的内存(Linux)?

人气:363 发布:2022-10-16 标签: linux performance memory java heap-memory

问题描述

如何通过命令行检查Linux上Java应用程序的堆大小(和已用内存)?

我已经通过jmap尝试过了。但它能提供信息。关于内部存储区,如伊甸园/PermGen等,这对我没有用处。

我在找类似的东西:

最大内存:1 GB 最小内存:256MB 堆内存:700MB 已用内存:460MB

仅此而已。我知道我可以在JConsole等中看到这一点,但我需要通过命令行来做到这一点。(无法启用JMX等)

JAVA

每个推荐答案进程都有一个pid,您首先需要使用jps命令找到它。

一旦获得PID,就可以使用jstat -gc [insert-pid-here]查找垃圾回收堆行为的统计信息。

jstat -gccapacity [insert-pid-here]将显示有关内存池生成和空间功能的信息。

jstat -gcutil [insert-pid-here]将以容量百分比的形式显示每一代的利用率。对于快速查看使用情况很有用。

请参阅Oracle网站上的jstat docs。

361