资源监控与瓶颈定位
通过top
或htop
命令实时监控CPU使用率,当数值持续超过80%时需关注异常进程。使用free -m
查看内存占用,交换空间(Swap)频繁读写表明内存不足。df -h
和iostat
可检测磁盘空间与I/O负载,磁盘利用率超过90%时应及时清理或扩容。
异常进程与服务分析
执行ps aux --sort=-%cpu
排序显示高CPU进程,结合kill -3 PID
生成线程快照。重点关注:
- 频繁GC的Java进程
- 异常增长的数据库连接
- 未授权的陌生进程
网络与日志诊断
使用iftop -nP
分析网络流量分布,TCP重传率超过5%表明网络异常。日志排查要点:
- Nginx/Apache访问日志中的5xx错误
- MySQL慢查询日志(
long_query_time >2s
) - 系统日志
/var/log/messages
中的OOM记录
性能优化策略
硬件层面建议采用SSD替换机械硬盘,内存扩展建议保留20%冗余空间。软件优化包括:
- 调整JVM堆大小与GC策略
- 设置MySQL查询缓存与索引优化
- 配置Nginx连接池与KeepAlive超时
措施 | 响应时间 | 吞吐量 |
---|---|---|
索引优化 | ↓65% | ↑200% |
JVM调优 | ↓40% | ↑150% |
通过资源监控(CPU/内存/磁盘/I/O四维分析)、进程排查(异常服务终止与线程优化)、日志审计(错误日志与慢查询定位)的三层诊断体系,结合硬件升级与参数调优,可系统化解决服务器卡顿问题。