JProfiler在Linux下的正确使用方法

时间:2025-01-15 21:10:35

在生产环境下按照前几天研究出来的JProfiler使用方法,结果一下就JVM crash,捣鼓了n久还是不行,害得出了一身冷汗,后来再次摸索了一下,原来之前不小心使用了WindowsX86下的方法,LinuxX86是不一样的。

 

按照Quickstart来创建remoting application,然后将 C:/Documents and Settings/用户名/.jprofiler4/ 这个配置文件copy到 Linux 下一个目录,如 /opt/jprofiler4/,之后使用 JVMPI 的方式来启动 JProfiler的agent:

 

JRockit:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/jprofiler4/bin/linux-x86/
/usr/local/jrockit/bin/java -Xms1024m -Xmx1024m -Xjvmpi:entryexit=off -Xrunjprofiler:port=8849,nowait,id=101,config=/opt/jprofiler4/ -Xbootclasspath/a:/opt/jprofiler4/bin/ -Xgc:parallel

 

Sun JDK:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/jprofiler4/bin/linux-x86/

/usr/lib/java -Xms1024m -Xmx1024m -Xrunjprofiler:port=8849,nowait,id=101,config=/opt/jprofiler4/  -Xbootclasspath/a:/opt/jprofiler4/bin/

 

注意这里有个id=101,这个号需要从里面获取

 

==============================

 

补充一下2种JVM在2个平台下的设置:

 

SUN JVM - Windows - JVMTI
-agentlib:jprofilerti=port=8849  "-Xbootclasspath/a:D:/Program Files/jprofiler4/bin/"

 

SUN JVM - Linux - JVMTI
-agentlib:jprofilerti=port=8849  -Xbootclasspath/a:/opt/jprofiler/bin/

 

JRockit VM - Windows - JVMPI - wait
-Xjvmpi:entryexit=off -Xrunjprofiler:port=8849 "-Xbootclasspath/a:D:/Program Files/jprofiler4/bin/"

 

JRockit VM - Linux - JVMPI - nowait
-Xjvmpi:entryexit=off -Xrunjprofiler:port=8849,nowait,id=102,config=/opt/jprofiler4/ -Xbootclasspath/a:/opt/jprofiler4/bin/

 

注意nowait时,需要提供配置文件