可能原因
CPU 或内存使用率过高,容易引起服务响应速度变慢、服务器登录不上等问题。而引起 CPU 或内存使用率过高的原因可能由硬件因素、系统进程、业务进程或者木马病毒等因素导致。
定位工具
Top:Linux 系统下常用的监控工具,用于实时获取进程级别的 CPU 或内存使用情况。以下图 top 命令的输出信息为例。
客户的服务器 节点:美国 接入商:腾讯云
Top 命令的输出信息主要分为两部分,上半部分显示 CPU 和内存资源的总体使用情况:
- 第一行:系统当前时间,当前登录用户个数以及系统负载。
- 第二行:系统总进程数、运行中进程数、休眠、睡眠和僵尸进程数量。
- 第三行:CPU 当前使用情况。
- 第四行:内存当前使用情况。
- 第五行:Swap 空间当前使用情况。
下半部分以进程为维度显示资源的占用情况:
- PID:进程 ID。
- USER:进程所有者。
- PR:进程优先级 NI:NICE 值,NICE 值越小,优先级越高。
- VIRT:使用的虚拟内存大小,单位 KB。
- RES:当前使用的内存大小,单位 KB。
- SHR:使用的共享内存的大小,单位 KB。
- S:进程状态。
- %CPU:更新时间间隔内进程所使用的 CPU 时间的百分比。
- %MEM:更新时间间隔内进程所使用的内存的百分比。
- TIME+:进程使用的 CPU 时间,精确到 0.01s。
- COMMAND:进程名称。
查看进程占用情况
执行以下命令,查看系统负载,并根据 %CPU
列与 %MEM
列,确定占用较多资源的进程。
top
分析进程
根据任务管理器中的进程,分析与排查问题,以采取对应解决方案。
- 如果是业务进程占用了大量 CPU 或内存资源,建议分析业务程序是否有优化空间,进行优化或者 升级服务器配置。
- 如果是异常进程占用了大量 CPU 或内存资源,则实例可能中毒,您可以自行终止进程或者使用安全软件进行查杀,必要时考虑备份数据,重装系统。
- 如果是腾讯云组件进程占用了大量 CPU 或内存资源,请 提交工单 联系服务器商进行进一步定位处理。
终止进程
- 根据分析的占用资源的进程情况,记录需要终止的进程 PID。
- 输入
k
。 - 输入需要终止进程的 PID ,按 Enter。如下图所示:
此处以终止 PID 为23的进程为例。
腾讯云的图片 转载
- 注意:若按 Enter 后出现
kill PID 23 with signal [15]:
,则继续按 Enter 保持默认设定即可。 - 操作成功后,界面会出现
Send pid 23 signal [15/sigterm]
的提示信息,按 Enter 确认即可。
其它相关故障
CPU 空闲但高负载情况处理
问题描述
Load average 是 CPU 负载的评估,其值越高,说明其任务队列越长,处于等待执行的任务越多。
通过 top 观察,类似如下图所示,CPU 很空闲,但是 load average 却非常高。
处理办法
执行以下命令,查看进程状态,并检查是否存在 D 状态进程。如下图所示:
ps -axjf
说明:
D 状态指不可中断的睡眠状态。该状态进程无法被杀死,也无法自行退出。
若出现较多 D 状态进程,可通过恢复该进程依赖资源或重启系统进行解决。
Kswapd0 进程占用 CPU 较高处理
问题描述
Linux 系统通过分页机制管理内存的同时,将磁盘的一部分划出来作为虚拟内存。而 kswapd0 是 Linux 系统虚拟内存管理中负责换页的进程。当系统内存不足时,kswapd0 会频繁的进行换页操作。换页操作非常消耗 CPU 资源,导致该进程持续占用高 CPU 资源。
处理办法
- 执行以下命令,找到 kswapd0 进程。
top
- 观察 kswapd0 进程状态。
若持续处于非睡眠状态,且运行时间较长并持续占用较高 CPU 资源,请执行 步骤3,查看内存的占用情况。 - 执行
vmstat
,free
,ps
等指令,查询系统内进程的内存占用情况。
根据内存占用情况,重启系统或终止不需要且安全的进程。如果 si,so 的值也比较高,则表示系统存在频繁的换页操作,当前系统的物理内存已经不能满足您的需要,请考虑升级系统内存。
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"www.yuankufang.com",如遇到无法解压的请联系管理员!
源库坊 » Linux 实例:CPU 或内存占用率高导致无法登录
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"www.yuankufang.com",如遇到无法解压的请联系管理员!
源库坊 » Linux 实例:CPU 或内存占用率高导致无法登录
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 源库坊