msnshow 发表于 2011-11-29 20:15:26

YourKit Java Profiler 剖析远程服务器

YourKit Java Profiler 比 JProfiler 要好安装,特别是在剖析远程服务器上。先到
YourKit.Java.Profiler.v9.0.3.For.Windows.Linux
下载 windows 和 linux 版。把都解压到不同的目录如 D:\profile\YourKit.Java.Profiler.v9.0.3.Incl.Keygen.and 和
D:\profile\YourKit.Java.Profiler.v9.0.3.Linux.Incl.Keygen.and。1、解压出 yjp-9.0.3.exe 安装。完了后,双击 D:\profile\YourKit.Java.Profiler.v9.0.3.Incl.Keygen.and\iNViSiBLE\keygen.bat 然后点“patch”,然后选择 D:\Program Files\YourKit Java Profiler 9.0.3\lib\yjp.jar2、输入用户名,点“Gengerate”,复制出 key。3、运行 yourkit profiler,输入刚才复制出的 key 就好了。然后就可正常运行了。

msnshow 发表于 2011-11-29 20:16:09

剖析远程服务器还需要在 linux 的安装 yourkit profiler(以控制台行动不需要 License),把解压出来的 yjp-9.0.3-linux.tar.bz2 上传到服务器,如:/home/admin/yjp-9.0.3-linux.tar.bz21、在 linux 解压 yjp-9.0.3-linux.tar.bz2,并运行。
[*]cd /home/admin/[*]tar xfj yjp-9.0.3-linux.tar.bz2[*]cd yjp-9.0.3[*]#生成启动脚本
[*]java -jar lib/yjp.jar -integrate
在生成启动脚本期间,要选择。如下:
[*]$ java -jar lib/yjp.jar -integrate[*]Choose server to integrate with:[*]1) Geronimo[*]2) JBoss 2.x/3.x/4.x[*]3) Jetty HTTP Server 5.x[*]4) JRun 4[*]5) Orion Application Server 1.5.x/2.x[*]6) Resin 2.x/3.x[*]7) Sun Application Server / GlassFish[*]8) Tomcat 3/4/5/6[*]9) WebLogic 9/10[*]10) WebSphere Application Server 7[*]11) Generic server (use if your server is not on the list)[*]Enter number which corresponds to your server (0 to exit) and press Enter:[*]>2[*]Please specify whether the server runs on a 32-bit JVM or a 64-bit JVM.[*]Hint: If you are not sure what to choose, choose "32-bit JVM". If with this choice the server does not start with profiling, re-run the integration and choose "64-bit Java" option.[*]1) 32-bit JVM[*]2) 64-bit JVM[*]>2[*]Location of JBoss startup script (<JBOSS_HOME>/bin/run.sh):[*]>/home/admin/yjp-9.0.3/jboss_run.sh[*]
[*]Startup options configuration: step 1 of 5[*]Should option 'disablestacktelemetry' be specified?[*]1) Yes (recommended to minimize profiling overhead in production)[*]2) No[*]>1[*]Startup options configuration: step 2 of 5[*]Should option 'disableexceptiontelemetry' be specified?[*]1) Yes (recommended to minimize profiling overhead in production)[*]2) No[*]>1[*]Startup options configuration: step 3 of 5[*]Should option 'builtinprobes=none' be specified?[*]1) Yes (recommended to minimize profiling overhead in production)[*]2) No[*]>1[*]Startup options configuration: step 4 of 5[*]Should option 'delay=10000' be specified?[*]1) Yes (recommended)[*]2) No[*]>1[*]Startup options configuration: step 5 of 5[*]Please specify comma-separated list of additional startup options, or press Enter for no additional options:[*]>[*]Startup script to be used for profiling has been successfully created:[*]
[*]/home/admin/yjp-9.0.3/jboss_run_with_yjp.sh
其实就在 jboss_run_with_yjp.sh 加个 jvm 启动参数:
[*]-agentpath:/home/admin/yjp-9.0.3/bin/linux-x86-64/libyjpagent.so=disablestacktelemetry,disableexceptiontelemetry,builtinprobes=none,delay=10000,sessionname=JBoss
可以参数自己的环境手动写,sessionname 是随便写吧(没验证过)。用带 yjp 参数启动 jboss。就可以剖析远程服务器。

msnshow 发表于 2011-11-29 20:16:22

在本地机 windows 用界面观察。在欢迎界面中有个 “Connect to remote application ...” 链接。可以输入 host:post。

注意 yourkit 的是在 10001 - 10010 中按顺序来决定哪个端口使用(有点不理解为什么不在启动 jvm 参数中指定)。

比如:192.168.1.100:10001。然后就可以看到界面了:

msnshow 发表于 2011-11-29 20:16:38

本帖最后由 msnshow 于 2011-11-29 20:19 编辑

天下无双1 发表于 2011-11-30 20:20:48

看上去不错,楼主还有相关文档共享一下么

shaomignzhao 发表于 2014-6-11 11:11:38

YourKit 这个工具性能具体分析,或者说怎么根据这个工具分析一个应用,怎么优化应用?

方便的话能加一下您QQ么?

msnshow 发表于 2014-7-13 09:29:28

主要还是看内存占用、回收是否正常
页: [1]
查看完整版本: YourKit Java Profiler 剖析远程服务器