您的位置:首页 > 运维架构 > Tomcat

Java性能分析神器-JProfiler 远程调试Tomcat

2017-12-07 17:36 591 查看


之前已经介绍过如何调试本地的JBoss。现在额外一篇文章关于如何远程调试Tomcat的,其实远程和本地的区别不大,主要区别只是,JProfiler的GUI运行在你本地,而JProfiler的Agent运行在远程服务端。本地和远端都需要安装Jprofiler的运行环境,帖子里面,本地是Windows,服务器端是Linux。废话不多说,直接上干货


环境:

1、jdk > 1.6

2、jprofiler 9.0.3

3、Tomcat 7


远程Linux 服务器配置

解压:

tar -zxvf jprofiler_linux_9_0_3.tar.gz

拷贝:

cd jprofiler9/bin/

cp jprofiler /usr/local/

配置环境变量:

修改/etc/profile系统配置文件:

JPROFILER_HOME=/opt/shanhy/jprofiler9/bin/linux-x64

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$JPROFILER_HOME

使配置文件生效:source /etc/profile


本地windows自己安装。


生成脚本

在本机生成startup_jprofiler.sh脚本,步骤如下:



















至此,startup_jprofiler.sh 已经生成,生成位置与我们选择的 startup.sh 在同一个目录。

我们把 startup_jprofiler.sh 上传到远程Linux服务器的Tomcat/bin目录下。

与往常启动Tomcat不同的是,我们不使用 startup.sh 而是直接使用 startup_jprofiler.sh 启动Tomcat。

这里需要说一下的是,默认startup_jprofiler.sh 最后启动Tomcat 方式为 run,我们需要修改一下,修改为 start,下面我们对比一下startup.sh 和 startup_jprofiler.sh 的不同:



其实差别也就是增加了2行配置,推荐大家直接在服务器上复制startup.sh 为 startup_jprofiler.sh,然后添加如下两行即可:

CATALINA_OPTS="-agentpath:/opt/jprofiler9/bin/linux-x64/libjprofilerti.so=port=8849,nowait $CATALINA_OPTS"

export CATALINA_OPTS

如果是用工具生成的startup_jprofiler.sh,注意我们要把生的startup_jprofiler.sh的最后一行的 run 修改为 start 后,再启动Tomcat,启动如图所示:




最后,启动jProfiler 监控





点击OK 后,我们就可以查看服务器Tomcat的各种情况了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  性能