欢迎关注 有问题,留言、私信交流
系统卡顿、服务响应慢找不到根因——盲目优化配置、升级硬件,结果问题依旧。3个命令就能精准定位CPU、内存、磁盘三大性能瓶颈,快速止损。
top 只能看宏观CPU使用率,pidstat 直接定位到具体进程。
1 2 3 4 5 6 7 8
# 每1秒输出一次,共输出5次,监控所有进程的CPU使用
pidstat 1 5
# 只监控Java进程(指定进程名)
pidstat -C java 1 3
# 查看进程的用户态/内核态CPU占比(关键区分计算密集/IO密集)
pidstat -u -p [进程PID] 1
核心指标解读
%usr 高:进程是计算密集型(如数据分析、编译),需优化算法或升级CPU%sys 高:进程频繁调用内核(如频繁读写文件),需排查IO效率很多人看 free 只盯 used 列,其实**available 才是真正可用内存**;结合 vmstat 看swap交换,避免被缓存误导。
1 2 3 4 5
# 以GB为单位显示内存,重点看available
free -h
# 监控内存和swap交换,每1秒输出一次
vmstat 1
核心指标解读
available < 10% 总内存:真·内存不足,需关闭无用进程或扩容vmstat 中 si/so 持续大于0:系统频繁读写swap分区,内存严重不足,优先解决内存问题(而非优化磁盘)磁盘IO高不一定是读写量大,也可能是磁盘本身性能差。iostat 直接揪出高负载分区和原因。
1 2 3 4 5
# 监控所有磁盘,每1秒输出一次,重点看%util
iostat -x 1
# 只监控sda分区(系统盘)
iostat -x sda 1
核心指标解读
%util 持续 > 80%:该磁盘已满载,服务响应慢大概率是IO等待rMB/s/wMB/s 高:确实是读写量大,需优化存储(如分盘、用SSD)rMB/s/wMB/s 低但 %util 高:磁盘性能差或有坏道,需检测磁盘健康pidstat 1 2 → 看是否有进程占满CPUfree -h → 看 available 是否充足,vmstat 1 看swap是否频繁iostat -x 1 → 看磁盘 %util 是否超标按这个顺序排查,90%的性能问题都能快速定位,不用再瞎猜。
available 足够就不用慌点击下方 卡片关注订阅
推荐阅读:
Linux
【Linux命令详解】文件查看比用6大命令:Head/tail/cat等,按需选择不踩坑!
欢迎 关注 视频号