关于线上问题的排查

1.OOM问题:
通过配置jvm参数:
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=/home/admin/logs/java.hprof
生成对应dump文件,使用解析工具进行解析。

2.CPU飙升问题:
通过top命令锁定进程,再通过进程ID结合jstat 可以查看stack信息;
jstat -gcutils 可以查看GC内存的情况:如S0/S1等。
jstack -l 可以查看死锁问题:如waiting 、runnable等。
jmap -histo:live 可以查看大对象分布。
jmap -heap 获取堆信息。

3.Load高,但是CPU使用率正常:
很大几率是IO过高,可以通过vmstat查看IO情况。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 参考自 http://techblog.youdao.com/?p=961 在分析具体故障,先介绍一下几种常用的工...
    抓兔子的猫阅读 11,288评论 1 27
  • 参数设置 在Java虚拟机的参数中,有3种表示方法用“ps -ef |grep "java"命令,可以得到当前Ja...
    九问阅读 12,987评论 2 52
  • 注:最近一直想出一篇介绍JVM底层函数调用的博客,奈何越写越多,现在还没写完,先来个简单的安慰下我受伤的心灵 滴滴...
    miaoLoveCode阅读 9,647评论 10 47
  • JVM运行时数据区堆、方法区、虚拟机栈、本地方法栈、程序计数器 线程共享数据区:堆:几乎所有对象实例都要在堆上分配...
    吃橘子的冬天阅读 1,319评论 0 0
  • 以下是Java自带的性能监控工具 必要时我们需要抓取Java全内存的Dump来分析,抓取方式有如下: | jhat...
    jackcooper阅读 4,479评论 2 10