一、准备环境

JProfiler 是个 Java 性能分析工具,得先装好 JDK。

  1. 检查 JDK:
java -version
  1. 没装就装 JDK 7:
sudo yum install java-1.7.0-openjdk java-1.7.0-openjdk-devel -y

二、下载并解压 JProfiler 包

安装包下载:https://pan.quark.cn/s/129949bc600b

下载完解压:

tar -zxvf jprofiler_linux64_7_2_3.tar.gz

解压后有个 jprofiler7文件夹,这就是安装目录。

三、配置环境变量

为了方便用,把 JProfiler 的 bin 目录加到 PATH 里:

echo 'export PATH=$PATH:/path/to/jprofiler7/bin' >> ~/.bashrc
source ~/.bashrc

把 /path/to/换成你实际解压的路径,比如 /opt/jprofiler7/bin

四、启动 JProfiler

进入 bin 目录:

cd jprofiler7/bin

启动:

./jprofiler

如果是服务器没图形界面,得用远程连接模式。先启动 agent:

./jpenable

按提示选要分析的 Java 进程,然后记下来端口号(默认 8849)。

五、本地连接远程 JProfiler

  1. 在本机打开 JProfiler(Windows 或 Mac 版)。
  2. 选 "Connect to an existing remote session"。
  3. 输入服务器 IP 和刚才记的端口(默认 8849)。
  4. 点 "Connect",就能看到远程 Java 进程的性能数据了。

六、集成到 Java 应用

如果想启动 Java 应用时就带上 JProfiler,加 JVM 参数:

java -agentpath:/path/to/jprofiler7/bin/linux-x64/libjprofilerti.so=port=8849 -jar yourapp.jar

把 /path/to/换成实际路径,yourapp.jar换成你的应用。

七、常见问题

  1. 启动时报 "libjprofilerti.so: cannot open shared object file"

    检查路径对不对,或者把 libjprofilerti.so所在目录加到 LD_LIBRARY_PATH

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/jprofiler7/bin/linux-x64
  1. 连接不上远程 JProfiler

    检查防火墙有没有开 8849 端口:

    sudo firewall-cmd --add-port=8849/tcp --permanent
    sudo firewall-cmd --reload
  1. 图形界面启动报错

    服务器没图形界面就用远程连接模式,别直接跑 ./jprofiler

这样就能用 JProfiler 7 分析 Java 应用的性能了,适合排查内存泄漏、CPU 占用高的问题。

标签: none

添加新评论