gpt4 book ai didi

java - 如何在没有 X11 的情况下从 Linux 控制台触发手动 Java GC

转载 作者:IT王子 更新时间:2023-10-29 00:23:28 25 4
gpt4 key购买 nike

我需要一种能够从 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 或等效程序安排调用此命令。

瞧!

关于java - 如何在没有 X11 的情况下从 Linux 控制台触发手动 Java GC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4155696/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com