在centOS系统中
1.安装sudo yum install gperftools-libs
2.查看安装位置rpm -ql gperftools-libs
3.使用shell脚本启动
export HEAPPROFILE=./heap.log (tcmalloc监控的日志)
export HEAP_PROFILE_ALLOCATION_INTERVAL=104857600
export LD_PRELOAD=/usr/lib64/libtcmalloc_and_profiler.so.4(上面查看安装位置显示的这个libtcmalloc_and_profiler文件的位置)
nohup java -jar xx.jar > /dev/null 2>&1 &
我这里是项目里输出日志目录了,所以脚本中取消了控制台的输出
启动后在当前目录下会出现很多的文件,类似这样的命名heap.log_4563.0001.heap
4.转换为pdf查看
如果提示没有pprof命令使用yum install pprof
如果提示sh: ps2pdf: command not found则yum install ghostscript
ps2pdf
是一个将PostScript格式文件转换为PDF文件的工具,通常属于Ghostscript包
pprof --pdf /usr/local/jdk/bin/java heap.log_8487.0026.heap > heap.log_8487.0026.heap.pdf
/usr/local/jdk/bin/java 是java命令的路径