我正在运行一个部署在远程机器服务器上的 Web 应用程序,并且我拥有该应用程序的 IP 地址和 URL。当我用浏览器点击 URL 时,应用程序就会显示出来。
我现在必须分析该 Web 应用程序,因为我需要找出它运行如此缓慢的原因。
我尝试使用JProfiler,没有成功。有人可以建议如何配置 JProfiler 进行远程分析吗?
在没有 GUI 的系统上分析远程 JVM 的最简单方法是:
提示:要找到瓶颈,请使用采样而不是检测。
JProfiler 10.0+ 的更新
从 JProfiler 10.0 开始,有一个远程附加功能不需要上述任何步骤,您只需要远程计算机的 SSH 凭据即可。
SSH 连接由 JProfiler 直接建立,您不必自己设置 SSH 隧道。也可以配置多跳隧道。
JProfiler 将自动下载所需的代理程序包,将其上传到远程计算机并使用其命令行工具收集您在附加对话框中看到的信息。代理程序包被缓存,因此只执行一次。
因为您必须以启动您要分析的 JVM 的同一用户身份进行身份验证,所以可以切换用户以进行远程连接。例如,您可以对 root 用户执行 sudo 以附加到以 root 身份启动的服务。
所选用户启动的所有 JVM 都会显示出来,您可以启动完整的分析会话,也可以只获取低开销的 HPROF 堆转储并在 JProfiler 中打开它。