解决CPU与带宽高使用率问题:深入分析与应对策略

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
可观测监控 Prometheus 版,每月50GB免费额度
MSE Nacos 企业版免费试用,1600元额度,限量50份
简介: 引言:性能问题的诊断与优化在运维工作中,操作系统性能问题如影随形,典型代表是CPU使用率高和带宽使用率高的问题,它们直接影响应用的性能和响应时间。这篇记录将逐个分析这两个问题的产生原因和解决方法。

cpu.jpeg

解决CPU与带宽高使用率问题:深入分析与应对策略


引言:性能问题的诊断与优化

在运维工作中,操作系统性能问题如影随形,典型代表是CPU使用率高和带宽使用率高的问题,它们直接影响应用的性能和响应时间。这篇记录将逐个分析这两个问题的产生原因和解决方法。


一、CPU使用率问题的全面剖析

排查分析

  1. 解决CPU使用率高的第一步是登录到服务器操作系统并执行top命令,该命令能实时显示系统中各个进程的资源占用情况。通过分析top命令的输出结果,可以确定哪些进程消耗了过多的CPU资源。

top

  1. 查看显示结果。
  • 命令回显第一行:20:56:02 up 37 days,1 user, load average: 0.00, 0.01, 0.05的每个字段含义如下:

系统当前时间为20:56:02,该云服务器已运行37天,当前共有1个用户登录, 最近1分钟、最近5分钟和最近15分钟的CPU平均负载。

  • 命令回显第三行:CPU资源总体使用情况。
  • 命令回显第四行:内存资源总体使用情况。
  • 回显最下方显示各进程的资源占用情况。

如下补充说明:

  • 在top页面,可以直接输入小写“q”或者在键盘上按“Ctrl+C”退出。
  • 在top运行中常用的内容命令如下:

  1. 通过ll /proc/PID/exe命令可以查看每个进程ID对应的程序文件。

ll /proc/PID/exe


问题处理

  1. 异常进程处理:如果发现某个进程的CPU占用率异常高,可以直接通过top命令中的k选项终止该进程。
  • 具体操作为在top界面中按k键,输入进程的PID,然后回车确认。进程的PID为top命令回显的第一列数值。例如,要终止PID为52的进程,直接输入“52”后回车。

  • 操作成功后,会出现如下图所示类似信息,按回车确认。

  1. 内存泄漏问题:如发现kswapd0进程频繁运行,说明系统可能在进行大量的页面交换操作,这通常与物理内存不足有关。
  • 通过top命令查看kswapd0进程的资源使用。
  • 如果kswapd0进程持续处于非睡眠状态,且运行时间较长,可以初步判定系统在持续的进行换页操作,可以将问题转向内存不足的原因来排查。

  • 通过vmstat命令进一步查看系统虚拟内存的使用情况。如果si和so的值也比较高,说明系统存在频繁的换页操作,系统物理内存不足。
  • si:每秒从交换区写到内存的大小,由磁盘调入内存。
  • so:每秒写入交换区的内存大小,由内存调入磁盘。
  • 解决这个问题的方法包括:
  • 临时解决方案:在业务低峰期重启应用或系统来临时释放内存。
  • 长期解决方案:从根本上解决内存不足的问题,需要对服务器内存进行扩容,扩大内存空间。如果不具备扩容的条件,可通过优化应用程序,以及配置使用大页内存来进行缓解。


二、带宽使用率高问题的策略分析

对于带宽使用率高的问题,首先要区分是正常的业务需求还是非正常访问(如恶意攻击)。


排查工具

使用nethogs工具可以帮助实时监测各个进程的带宽使用情况。安装nethogs后,通过简单的命令即可监控指定网络接口的流量使用情况,定位高带宽使用的进程。


问题处理

一、正常业务导致的高带宽使用:如果是由于正常业务增长导致的带宽使用率高,应考虑升级服务器的网络带宽。
二、非正常访问导致的问题
  1. 执行以下命令,安装nethogs工具。

yum install nethogs -y

安装成功后可以通过netgos命令查看网络带宽的使用情况。

nethogs命令常用参数说明如下:

  • d:设置刷新的时间间隔,默认为 1s。
  • t:开启跟踪模式。
  • c:设置更新次数。
  • device:设置要监测的网卡,默认是eth0。

运行时可以输入以下参数完成相应的操作:

  • q:退出nethogs工具。
  • s:按发送流量大小的顺序排列进程列表。
  • r:按接收流量大小的顺序排列进程列表。
  • m:切换显示计量单位,切换顺序依次为KB/s、KB、B、MB。
  1. 执行以下命令,查看指定的网络端口每个进程的网络带宽使用情况。

nethogs eth1

回显参数说明如下:

  • PID:进程 ID。
  • USER:运行该进程的用户。
  • PROGRAM:进程或连接双方的IP地址和端口,前面是服务器的IP和端口,后面是客户端的IP和端口。
  • DEV:流量要去往的网络端口。
  • SENT:进程每秒发送的数据量。
  • RECEIVED:进程每秒接收的数据量。
  1. 如果确认大量占用网络带宽的进程是恶意进程,可以使用kill PID命令终止恶意进程。
  2. 针对特定IP的恶意访问,可以使用iptables对恶意IP进行屏蔽或限速。


最后:持续监控与优化

解决CPU和带宽使用率高的问题不是一蹴而就的,需要持续监控和及时调整。通过定期检查系统性能和使用情况,可以及时发现潜在问题并进行优化。

此外,利用工具如topnethogs能够帮助运维人员快速定位问题源头,而合适的处理策略则能够确保系统的稳定运行。


最后~欢迎关注我! @Linux学习的那些事儿

我的个人资源整理,满满都是干货: 无任何套路,有需要可以访问领取

200T免费资源专区,持续发布中...

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

目录
打赏
0
9
9
0
50
分享
相关文章
我是如何通过火焰图分析让应用CPU占用下降近20%的
分享作者在使用Arthas火焰图工具进行Java应用性能分析和优化的经验。
CPU被打满/CPU 100%:高效应对策略与技术干货分享
【10月更文挑战第3天】在信息技术高速发展的今天,无论是开发人员、运维人员还是数据分析师,都可能遇到CPU被打满(即CPU使用率达到100%)的情况。这不仅会影响系统的响应速度,严重时甚至会导致服务中断。本文将从诊断、分析与解决三个方面,详细介绍处理CPU 100%问题的技术干货。
406 3
taosd 写入与查询场景下压缩解压及加密解密的 CPU 占用分析
在当今大数据时代,时序数据库的应用越来越广泛,尤其是在物联网、工业监控、金融分析等领域。TDengine 作为一款高性能的时序数据库,凭借独特的存储架构和高效的压缩算法,在存储和查询效率上表现出色。然而,随着数据规模的不断增长,在保证数据安全性和存储效率的同时,如何优化 CPU 的资源占用,成为了一个值得深入讨论的问题。
97 1
YOLOv11改进策略【模型轻量化】| PP-LCNet:轻量级的CPU卷积神经网络
YOLOv11改进策略【模型轻量化】| PP-LCNet:轻量级的CPU卷积神经网络
301 15
YOLOv11改进策略【模型轻量化】| PP-LCNet:轻量级的CPU卷积神经网络
解决Windows云服务器带宽和CPU利用率高的问题
本文针对Windows Server 2019 ×64系统,介绍如何排查云服务器带宽和CPU利用率过高的问题。通过任务管理器、性能监视器等工具定位高资源占用的进程,并根据进程是否正常采取相应措施。对于正常进程,建议优化或升级配置;对于异常进程,建议关闭进程并进行系统备份或还原。详细步骤包括使用“perfmon -res”查看资源使用情况,结合PID查找具体进程,分析处理后台任务、杀毒软件及应用程序的影响。
266 1
|
9月前
线程CPU异常定位分析
【10月更文挑战第3天】 开发过程中会出现一些CPU异常升高的问题,想要定位到具体的位置就需要一系列的分析,记录一些分析手段。
234 0
2025年阿里云服务器配置选择全攻略:CPU、内存、带宽与系统盘详解
在2025年,阿里云服务器以高性能、灵活扩展和稳定服务助力数字化转型,提供轻量应用服务器、通用型g8i实例等多样化配置,满足个人博客至企业级业务需求。针对不同场景(如计算密集型、内存密集型),推荐相应实例类型与带宽规划,强调成本优化策略,包括包年包月节省成本、ESSD云盘选择及地域部署建议。文中还提及安全设置、监控备份的重要性,并指出未来可关注第九代实例g9i支持的新技术。整体而言,阿里云致力于帮助用户实现性能与成本的最优平衡。 以上简介共计238个字符。
RT-DETR改进策略【模型轻量化】| PP-LCNet:轻量级的CPU卷积神经网络
RT-DETR改进策略【模型轻量化】| PP-LCNet:轻量级的CPU卷积神经网络
163 0
RT-DETR改进策略【模型轻量化】| PP-LCNet:轻量级的CPU卷积神经网络
Docker容器性能调优的关键技巧,涵盖CPU、内存、网络及磁盘I/O的优化策略,结合实战案例,旨在帮助读者有效提升Docker容器的性能与稳定性。
本文介绍了Docker容器性能调优的关键技巧,涵盖CPU、内存、网络及磁盘I/O的优化策略,结合实战案例,旨在帮助读者有效提升Docker容器的性能与稳定性。
694 7
网站应用项目如何选择阿里云服务器实例规格+内存+CPU+带宽+操作系统等配置
对于使用阿里云服务器的搭建网站的用户来说,面对众多可选的实例规格和配置选项,我们应该如何做出最佳选择,以最大化业务效益并控制成本,成为大家比较关注的问题,如果实例、内存、CPU、带宽等配置选择不合适,可能会影响到自己业务在云服务器上的计算性能及后期运营状况,本文将详细解析企业在搭建网站应用项目时选购阿里云服务器应考虑的一些因素,以供参考。

云原生

+关注
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问