定位高占用进程
top
、htop
命令按 CPU/内存排序,查看占用高的进程 PID 和名称。jstack
分析线程堆栈,定位代码问题。分析原因
journalctl -u 服务名
)是否有异常。ps -mp <PID>
结合 jstack
分析线程状态,判断是否为内存泄漏或死循环。优化或终止进程
kill <PID>
终止(谨慎操作,避免影响核心服务)。限制资源使用
ulimit
限制进程内存/CPU 使用:ulimit -v <内存限制值>
。cpulimit
限制 CPU 占用:cpulimit -p <PID> -l <百分比>
。系统级调优
/etc/sysctl.conf
中的 vm.swappiness
控制交换空间使用倾向)。swapon -s
查看交换空间,dd
命令创建交换文件)。监控与预防
nmon
、Prometheus
)实时监控资源使用,设置阈值告警。注意:操作前建议备份重要数据,关键服务需在测试环境验证优化效果。