服务器CPU 100%怎么排查?从入门到解决的全流程教程

服务器突然卡顿到几乎连不上,CPU 占用率达到 100% —— 这是很多建站新手都会遇到的头疼问题。
别慌,这篇文章会带你一步一步检查异常来源,并给出可执行的处理方法。

先看这一刻到底是谁在吃 CPU

登录服务器(通过 SSH 或宝塔面板的终端),在命令行里输入下面这个命令:

top

按一下 1 键,可以看到每个 CPU 核心的使用情况。
重点关注 %CPU 那一列排在最上面的进程。
如果某个进程的 CPU 占用持续超过 80%,基本就是它导致的。

有些系统默认没装 htop,效果更直观:

htop

F6 可以按 CPU 排序,用方向键选中进程后按 F9 可以直接结束(kill)。

小技巧:如果 top 里看到很多个同样的进程(比如 php-fpm、java、python),说明可能是并发请求过多或某些服务挂了。

进一步确认进程背后的身份

光看进程名还不够,你需要知道这个可执行文件在哪、是谁启动的。
执行:

ps -aux --sort=-%cpu | head -20

这条命令会列出 CPU 占用前 20 的进程详情,包括启动用户、CPU 使用率、内存和启动命令。

如果发现是 /usr/bin/php 运行了一个可疑的脚本,或者 ./xmrig 这种典型挖矿进程,那基本可以确定是恶意程序或资源被滥用。

对于可疑进程,先用 kill -9 进程PID 杀掉,然后检查 cron 定时任务:

crontab -l
cat /etc/crontab

把里面你不认识的任务先注释掉。

常见的 CPU 100% 原因与解法

场景一:PHP-FPM 进程过多(网站访问量大或慢查询)

如果 top 里看到大量 php-fpm 进程,每个占用的 CPU 并不高但总数很多,说明并发超过预期。

解决:

  • 登录宝塔面板 -> 软件商店 -> PHP -> 设置 -> 性能调整,降低 pm.max_children(比如从 50 降到 20)。
  • 或者临时在命令行手动重启 php-fpm:
systemctl restart php-fpm

场景二:MySQL 进程长期占用高 CPU

执行:

mysqladmin processlist -u root -p

或者登陆 MySQL 后执行 SHOW FULL PROCESSLIST;,看是否有大量 Query 状态或者 Copying to tmp table

常见解法:

  • 开启慢查询日志,找到重复的慢 SQL,加上索引。
  • 减少不必要的数据库连接数,比如在程序里启用连接池。

场景三:被挖矿木马入侵

如果发现 crontab 里有多条非自己创建的定时任务,且进程名类似 xmrigminerdkworker(伪装名),请立即:

  1. 杀掉进程
  2. 删除定时任务
  3. 检查 /tmp/var/tmp/dev/shm 下的可疑文件并删除
  4. 修改服务器密码、SSH 端口
  5. 如果没装安全软件,建议安装 CloudLinux 或 Wordfence(如果是 WordPress)

避坑提醒(新手容易踩的点)

  • 不要直接重启服务器:重启后 CPU 会短暂降下来,但进程重新启动后又会 100%,且重启可能让正在写入的数据丢失。
  • 不要随意 kill systemd 或其他系统进程:如果杀掉 sshd、systemd 等核心进程,会导致服务器无法连接。
  • 宝塔面板里不要同时开启过多额外服务:比如在同一台小内存服务器上开 Nginx、Apache、MySQL、PHP 多个版本,CPU 和内存互相抢占。
  • 云服务器 1 核 1G 配置跑 WordPress + WooCommerce?CPU 很容易 100%,建议升级配置或启用静态缓存。

如何验证问题已经解决

杀掉异常进程或调整配置后,观察 5-10 分钟:

top -bn1 | grep Cpu

如果 %us(用户态)和 %sy(系统态)加起来降到 30% 以下,说明恢复正常。

同时访问网站首页,看打开速度是否恢复到 1-3 秒内。
如果还是慢,继续用 top 检查,看看是不是另一个进程接力导致了 100%。

最后,建议在服务器上装一个简单的监控工具,比如 netdata 或宝塔的资源监控,这样下次 CPU 飙高时可以看回放,知道是哪个时间点哪个进程搞的鬼。

---

如果你正在处理服务器 CPU 100%,建议先按本文步骤完整执行,再根据自己的环境做微调;
遇到异常时优先回看避坑和高频问题部分。

分享到:
上一篇
新手服务器运维指南:从零搭建安全的Linux服务器环境
下一篇
服务器内存爆满怎么办?从排查到解决一步到位
1
系统公告

高考专属福利来袭|凭准考证免费领香港 CN2 云服务器

值高考落幕之际,泽御云开启考生专属回馈 + 产品限时特惠双重活动,助力学子暑期学习建站 高考 考生专属福利 全体应届高考生,凭高考准考证即可免费申领【香港 CN2 轻量云服务器,4 核 4G AMD 处理器】,免费使用周期 30 天,可用于搭建个人站点、编程实操、技术实训,祝各位考生金榜题名,前程似锦! 泽御云资质齐全合规自营机房,线路覆盖香港 CN2、国内 BGP、内蒙电信、美国精品线路,售后全天候技术支持。 官方网站:www.zeyuyun.com,活动限时有效,优惠逾期不再保留。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意