gpt4 book ai didi

java - 如何检查 Jetty 应用程序的内存使用情况并强制进行垃圾回收

转载 作者:行者123 更新时间:2023-12-02 07:19:18 26 4
gpt4 key购买 nike

我认为在 jetty 8.1.7 上运行的 servlet 应用程序中可能存在内存泄漏。

  1. 有没有办法查看某个时间实例实际使用了多少堆内存,而不是使用 -Xmx 分配的最大内存,而是实际使用的内存量。
  2. 我可以强制在 jetty 中运行的应用程序进行垃圾回收

最佳答案

是的,这两个都可以轻松实现:VisualVM (参见: http://docs.oracle.com/javase/6/docs/technotes/guides/visualvm/monitor_tab.html )默认情况下,该版本随 Oracle JDK 一起提供(=> 无需额外安装)

但是对于内存泄漏检测,我建议进行内存转储并稍后使用 eclipse MAT 进行分析。 ( http://www.eclipse.org/mat/ ),因为它有相当漂亮的 UI 可视化 java 内存转储。

编辑:

对于仅 ssh 访问,是的,您可以使用上述两个工具。但是,您需要在运行窗口管理器的计算机上运行它们,并通过 ssh 远程连接到另一台计算机(您需要在这两台计算机上安装 java):

  • 对于visualVM :你需要有VisualVM在一台机器上运行并通过 ssh 连接到远程机器,请参阅:VisualVM over ssh
  • 对于内存转储:使用 jmap (有关示例用法,请参阅:http://kadirsert.blogspot.de/2012/01/ …)然后下载转储文件并在本地加载到 eclipse MAT

关于java - 如何检查 Jetty 应用程序的内存使用情况并强制进行垃圾回收,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14461443/

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