获取 Linux 下正在运行的 JVM 的总已使用内存

发布于 2024-11-30 17:32:42 字数 80 浏览 0 评论 0原文

我正在寻找一种有效的方法来测量正在运行的 jvm 使用的内存。 带有 jvm pid 的单个命令行返回内存消耗大小的可靠值。

谢谢

I'm looking for an efficient way to measure the memory used by a running jvm.
A single command line with the pid of my jvm returning a reliable value of the consummed size of the memory.

Thx

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

债姬 2024-12-07 17:32:42

您可以运行

ps aux | grep java

这将显示启动字符串中包含 java 的每个应用程序的内存使用情况,这应该是大多数(如果不是全部)java 应用程序。

我的服务器的输出如下:

servername:~ servername$ ps aux | grep java
servername 50122   0.3  1.7  2832968  89236   ??  S    Thu08AM 117:55.94 /usr/bin/java -jar /srv/eurekaj/Proxy/eurekaJ.Proxy-1.0.RC1-jar-with-dependencies.jar
servername 72399   0.0 25.9  4978676 1355616   ??  S    29Jul11 1560:43.70 /usr/bin/java -Xmx2g -Xms1g -Djava.io.tmpdir=/tmp -Dbtrace.agent=HudsonAgent -javaagent:/srv/btrace/1.2/btrace-agent.jar=scriptdir=/srv/btrace/scripts,stdout=false,fileRollMilliseconds=7500 -jar hudson.war --httpPort=8093
servername 72392   0.0  8.3  3169604 437192   ??  S    29Jul11 120:41.42 /usr/bin/java -Xmx256m -Xms256m -Djava.io.tmpdir=/jettytmp -Dbtrace.agent=JSFlotDemoAgent -Dlog4j.configuration=file:/srv/jsflot/demo/log4j.xml -javaagent:/srv/btrace/1.2/btrace-agent.jar=scriptdir=/srv/btrace/scripts,stdout=false,fileRollMilliseconds=7500 -classpath :very_verbose_classpath org.jsflot.server.JettyServer
servername 97501   0.0  0.0  2425712    276 s000  R+    4:58AM   0:00.00 grep java

您可以从中读取每个进程的 PID、CPU 使用率 (%) 和内存使用率 (%)。

您还可以使用该

top

命令来获得类似的结果。

You can run

ps aux | grep java

This will show you the memory usage of each application containing java in their launch-string, which should be most if not all java apps.

The output from my server is the following:

servername:~ servername$ ps aux | grep java
servername 50122   0.3  1.7  2832968  89236   ??  S    Thu08AM 117:55.94 /usr/bin/java -jar /srv/eurekaj/Proxy/eurekaJ.Proxy-1.0.RC1-jar-with-dependencies.jar
servername 72399   0.0 25.9  4978676 1355616   ??  S    29Jul11 1560:43.70 /usr/bin/java -Xmx2g -Xms1g -Djava.io.tmpdir=/tmp -Dbtrace.agent=HudsonAgent -javaagent:/srv/btrace/1.2/btrace-agent.jar=scriptdir=/srv/btrace/scripts,stdout=false,fileRollMilliseconds=7500 -jar hudson.war --httpPort=8093
servername 72392   0.0  8.3  3169604 437192   ??  S    29Jul11 120:41.42 /usr/bin/java -Xmx256m -Xms256m -Djava.io.tmpdir=/jettytmp -Dbtrace.agent=JSFlotDemoAgent -Dlog4j.configuration=file:/srv/jsflot/demo/log4j.xml -javaagent:/srv/btrace/1.2/btrace-agent.jar=scriptdir=/srv/btrace/scripts,stdout=false,fileRollMilliseconds=7500 -classpath :very_verbose_classpath org.jsflot.server.JettyServer
servername 97501   0.0  0.0  2425712    276 s000  R+    4:58AM   0:00.00 grep java

What you can read from this is PID, CPU Usage (%) and Memory Usage (%) for each of the processes.

You can also use the

top

command to get similar results.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文