如何从没有X11的Linux控制台触发手动Java GC

如何从没有X11的Linux控制台触发手动Java GC,第1张

概述我需要一种能够从ubuntu上的 linux控制台脚本触发完整GC的方法. 我知道这是非常糟糕的做法,但没有太多细节,这使我的服务器保持运行,这只是在我解决实际问题的1或2天,所以我不必在夜间醒来并执行通过jconsole或jvisualvm手动GC. 或者,我必须制作一个鼠标脚本,每3-4小时左右点击一次按钮,这更糟糕. 请帮忙. 如果您可以让您的应用程序启动JMX服务器(我认为这是使用jcon 我需要一种能够从ubuntu上的 linux控制台脚本触发完整GC的方法.
我知道这是非常糟糕的做法,但没有太多细节,这使我的服务器保持运行,这只是在我解决实际问题的1或2天,所以我不必在夜间醒来并执行通过jconsole或jvisualvm手动GC.

或者,我必须制作一个鼠标脚本,每3-4小时左右点击一次按钮,这更糟糕.

请帮忙.

解决方法 如果您可以让您的应用程序启动JMX服务器(我认为这是使用jconsole / jvisualvm所暗示的),那么您可以通过命令行实用程序调用Memory MBean的gc *** 作.

首先,您需要某种命令行JMX客户端.我过去使用过this one进行简单的命令行调用,它运行正常. (编辑:事实上我刚才用它来测试以下命令,并在本地Tomcat进程上成功调用GC)

然后你需要找出命令来触发垃圾收集.我认为这应该可行(您当然需要根据需要更改主机/端口/凭据):

java -jar cmdline-jmxclIEnt-X.X.jar - localhost:8081 java.lang:type=Memory gc

最后,您可以通过cron或等效计划调用此命令.

瞧!

总结

以上是内存溢出为你收集整理的如何从没有X11的Linux控制台触发手动Java GC全部内容,希望文章能够帮你解决如何从没有X11的Linux控制台触发手动Java GC所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1046040.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存