如何在 Glassfish 上 Monitoring/Profile Web 项目 运行

How to Monitoring/Profile Web project running on Glassfish

是否可以在 Glassfish 服务器上 monitor/profile 一个 运行 的 Web 项目?

我想要实现的是 1 - 找出内存使用情况,2 - 我的 Web 应用程序的 运行 代码很慢(是否可以只监视单个 war 文件或获取与 war 文件相关的一些统计信息?)

我尝试了 jconsolejvisualvm 但我的应用程序没有出现(或者至少它没有按名称出现,也许 Glassfish 实例需要被监控)。

老实说,我不确定如何准确监控 war、jar 或 ear 项目。

我也不知道搜索什么词才能知道"My application is using this much memory, this much is memory leak and these part of the codes are running slow"

分析器总是分析整个 JVM,而不是单独分析一个 WAR。可能您的 WAR 文件中有代码的特定包,您可以设置调用树过滤器,以便仅测量那些 classes。要查看与 WAR 文件相关的内存消耗,您必须找到 Web 应用程序的 class 加载程序并查看其保留的对象。

but my application does not appear

有时,识别运行 Web 应用程序的 JVM 并不直接。 Glassfish 启动脚本启动另一个 JVM,这就是您感兴趣的那个。

一些分析器具有集成向导,可以更轻松地获得正确的 JVM,例如 JProfiler 具有 Glassfish 的集成向导。

免责声明:我公司开发了 JProfiler。