You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Windows虚拟机JProfiler远程性能分析连接问题及解决步骤

JProfiler远程连接Azure Windows虚拟机Java应用分步流程及问题解决

目标虚拟机(xxx.xx.xx.254)前置配置

  • 给Java应用添加JProfiler代理参数
    找到Java应用的启动脚本或命令,加入对应JProfiler版本的JVM代理参数。如果目标机已安装JProfiler,参数示例:
    -agentpath:"C:\Program Files\jprofiler14\bin\windows-x64\jprofilerti.dll"=port=9010,nowait
    注意替换实际安装路径;如果目标机未装JProfiler,需将对应平台的代理文件(如windows-x64下的jprofilerti.dll)上传至目标机,参数中指定该文件的绝对路径。
  • 重启Java应用,确保代理参数生效,此时应用会监听9010端口。

Azure网络与本地防火墙配置

  • Azure网络安全组(NSG)规则
    在目标虚拟机的NSG中添加入站规则:允许来源IP为xxx.xx.xx.159的TCP流量访问9010端口;同时确认出站规则允许目标机与xxx.xx.xx.159的TCP通信(默认规则通常允许,若未生效需手动配置)。
  • Windows防火墙配置
    在目标机打开Windows Defender防火墙,添加入站规则:允许9010端口的TCP连接,或直接放行Java应用进程的网络通信。

本地虚拟机(xxx.xx.xx.159)JProfiler连接步骤

  1. 打开JProfiler,选择New Session -> Attach to remote JVM
  2. 连接类型选择Direct Socket Connection
  3. 填写目标机IP:xxx.xx.xx.254,端口:9010
  4. 点击OK,等待连接建立,成功后即可查看目标应用的JVM性能数据。

常见问题排查

直接连接失败

  • 端口连通性测试:在xxx.xx.xx.159机器上执行Test-NetConnection xxx.xx.xx.254 -Port 9010(PowerShell)或telnet xxx.xx.xx.254 9010,若不通,优先检查Azure NSG和Windows防火墙规则是否正确配置。
  • 代理参数验证:查看目标应用的启动日志,确认是否存在JProfiler agent initialized类的日志,若没有,说明代理参数未生效,检查路径是否正确、JProfiler位数(32/64位)是否与Java应用匹配。
  • 端口占用检查:在目标机执行netstat -ano | findstr :9010,确认9010端口是否由目标Java应用进程监听。

SSH方式连接超时

  • 启用SSH服务:目标Windows虚拟机默认未开启SSH,需在设置中启用OpenSSH服务器,或安装第三方SSH服务。
  • SSH端口放行:在Azure NSG中添加入站规则,允许来源IP为xxx.xx.xx.159的TCP流量访问22端口(默认SSH端口),同时在目标机Windows防火墙中放行SSH服务的通信。
  • SSH连通性测试:在xxx.xx.xx.159机器上执行ssh administrator@xxx.xx.xx.254,确认能否正常登录;若登录成功但JProfiler连接失败,检查JProfiler的SSH配置项(用户名、密码/密钥、目标机JProfiler路径)是否正确。

内容的提问来源于stack exchange,提问作者Jeby

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 17:50:35