文章预览
前言 最近经常有小伙伴问我,遇到了线上问题要如何快速排查。 这非常考验工作经验了。 有些问题你以前遇到,如果再遇到类似的问题,就能很快排查出导致问题的原因。 但如果某个问题你是第一次遇到,心中可能会有点无从下手的感觉。 这篇文章总结了,我之前遇到过的一些线上问题排查思路,希望对你会有所帮助。 1 OOM问题 OOM问题在生产环境中,一旦出现,一般会是非常严重的问题,服务可能会挂掉。 但是OOM问题有多种情况,不同的情况,出现问题的原因不一样。 1.1 堆内存OOM 服务器的日志一般会打印下面的内容: java.lang.OutOfMemoryError: Java heap space 这种是出现最多的OOM问题。 在Java服务启动时,可以增加下面的参数: -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=heapdump.hprof 在发生OOM时,程序会自动把当时的内存使用情况,dump保存到指定的文件
………………………………