digdeep

凡是过去,皆是序幕。Read the fucking manual and source code.

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  339 随笔 :: 0 文章 :: 207 评论 :: 0 引用

连续两天tomcat出现了假死的情况,不响应任何请求。但是日志里面没有看到任何相关异常。

调查方法,把当前内存堆栈和线程堆栈打印出来,然后进行分析。

#dump 方法栈信息
jstack $pid > /home/$pid/jstack.txt

#dump jvm内存使用情况
jmap -heap $pid > /home/$pid/jmapheap.txt

#dump jvm二进制的内存详细使用情况 (效果同在Tomcat的catalina.sh中添加 set JAVA_OPTS=%JAVA_OPTS% -server -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/home/heapdump  此文件需要借用内存分析工具如:Memory Analyzer (MAT)来分析)
jmap -dump:format=b,file=/home/$pid/jmapdump.txt $pid

  

posted on 2020-04-28 21:07  digdeep  阅读(623)  评论(0编辑  收藏
不懂数据库和Web安全的架构师不是一个好的程序员。