JAVA线上故障排查全套路 TTATTC 2025-07-20 79 阅读1分钟 正文及练习地址:www.skillup.host/1/java/qa.m… 概述 1. CPU 问题排查 1.1 使用 jstack 分析 cpu 问题 1.2 频繁 gc 1.3 上下文切换 2. 磁盘问题排查 2.1 磁盘空间检查 2.2 磁盘I/O性能分析 2.3 进程I/O详细分析 2.4 常见问题排查 3. 内存问题排查 3.1 堆内内存 3.1.1 OOM 3.1.2 Stack Overflow 3.1.3 使用JMAP定位代码内存泄漏 3.1.4 gc问题和线程 3.2 堆外内存 3.3 GC问题 3.3.1 youngGC过频繁 3.3.2 youngGC耗时过长 3.3.3 触发fullGC 4. 网络问题排查 4.1 超时 4.2 TCP队列溢出 4.3 RST异常 4.3.1 端口不存在 4.3.2 主动代替FIN终止连接 4.3.3 客户端或服务端有一边发生了异常,该方向对端发送RST以告知关闭连接 4.3.4 接收到的TCP报文不在已知的TCP连接内 4.3.5 一方长期未收到另一方的确认报文,在一定时间或重传次数后发出RST报文 4.4 TIME_WAIT和CLOSE_WAIT 4.4.1 TIME_WAIT 4.4.2 CLOSE_WAIT 5. 总结 5.1 故障排查流程 5.2 常用工具总结 5.3 最佳实践