欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

mat工具MemoryAnalyzer进行分析java内存溢出hprof文件

发布时间:2024/4/17 57 豆豆
生活随笔 收集整理的这篇文章主要介绍了 mat工具MemoryAnalyzer进行分析java内存溢出hprof文件 小编觉得挺不错的,现在分享给大家,帮大家做个参考.
java服务端程序报错后会生成hprof文件,我们可以通过mat工具MemoryAnalyzer进行分析
下载地址:

http://www.eclipse.org/mat/downloads.php


说明:
查看HPROF快照
  JProfiler能打开用JVM工具(比如jconsole、 jmap或通过-XX:+HeapDumpOnOutOfMemoryError JVM参数触发)创建的HPROF快照文件

示例:

#!/bin/bash LANG="zh_CN.UTF-8"APP_HOME=$(echo `pwd` | sed 's/bin//') APPPIDFILE=$APP_HOME/app.pidcase $1 in start)echo "Starting server... "HEAP_MEMORY=512mPERM_MEMORY=64mJMX_PORT=8888JMX_HOST=1.1.1.1JAVA_OPTS="-server -Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.EPollSelectorProvider -XX:+HeapDumpOnOutOfMemoryError -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false "shiftARGS=($*)for ((i=0; i<${#ARGS[@]}; i++)); docase "${ARGS[$i]}" in-D*) JAVA_OPTS="${JAVA_OPTS} ${ARGS[$i]}" ;;-Heap*) HEAP_MEMORY="${ARGS[$i+1]}" ;;-Perm*) PERM_MEMORY="${ARGS[$i+1]}" ;;-JmxPort*) JMX_PORT="${ARGS[$i+1]}" ;;-JmxHost*) JMX_HOST = "${ARGS[$i+1]}" ;;esacdoneJAVA_OPTS="${JAVA_OPTS} -Xms${HEAP_MEMORY} -Xmx${HEAP_MEMORY} -XX:PermSize=${PERM_MEMORY} -XX:MaxPermSize=${PERM_MEMORY} -Dcom.sun.management.jmxremote.port=${JMX_PORT} -Djava.rmi.server.hostname=${JMX_HOST} -Dapp.home=${APP_HOME}"echo "start jvm args ${JAVA_OPTS}"nohup java -classpath .:./aa-media-2.0.0.jar:$CLASSPATH $JAVA_OPTS com.aaa.media.aaaMediaServer& echo $! > $APPPIDFILEecho STARTED;;stop)echo "Stopping server ... "if [ ! -f $APPPIDFILE ]thenecho "error: count not find file $APPPIDFILE"exit 1elsekill -15 $(cat $APPPIDFILE)rm $APPPIDFILEecho STOPPEDfi;;*)echo "Please enter start|stop ... ";;esacexit 0

转载于:https://www.cnblogs.com/reblue520/p/6239664.html

总结

以上是生活随笔为你收集整理的mat工具MemoryAnalyzer进行分析java内存溢出hprof文件的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。