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

2022-03-14 00:00:00 performance memory linux 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。

相关文章