用 dmesg 定位性能瓶颈的实操指南
一、快速定位流程
二、按资源类型在 dmesg 中的排查要点
三、高频信号与对应动作
| 现象关键词(dmesg) | 可能瓶颈 | 建议动作 |
|---|---|---|
| Out of memory / oom-killer | 内存不足 | 用 free、vmstat 确认压力;优化应用内存或增加内存;必要时降低 vm.swappiness 并排查泄漏 |
| I/O error / timeout / reset(如 ataX、sdX) | 磁盘/控制器异常 | 查看 iostat -xz 1 的 util 与错误计数;检查线缆/背板/固件;考虑更换磁盘或控制器 |
| TCP: Possible SYN flooding | 网络半连接拥塞 | 用 sar -n TCP,ETCP 1 与 netstat/snmp 验证;调整内核网络参数(如 net.ipv4.tcp_tw_reuse)、优化应用连接管理 |
| CPU overload / temperature | CPU 饱和或过热降频 | 用 mpstat -P ALL 1、pidstat 1 找热点进程;检查散热/降频策略 |
| driver failed / device not ready | 驱动/硬件故障 | 更新驱动与固件;核对设备 ID 与兼容性;必要时更换硬件 |
四、高效命令清单
五、定位后的优化方向