linux性能工具
文章目录Linux 性能排查命令速查手册一、CPU、系统负载、内存1. `uptime` —— 查看系统负载2. `top` —— 查看进程和系统实时状态3. `vmstat` —— 查看系统综合性能4. `mpstat` —— 查看各 CPU 核心状态5. `free` —— 查看内存使用情况6. `ps` —— 查看进程快照7. `pidstat` —— 查看单个进程的资源消耗二、磁盘空间与 I/O8. `iostat` —— 查看磁盘 I/O 性能9. `iotop` —— 找出产生磁盘 I/O 的进程10. `df` 和 `du` —— 排查磁盘空间不足三、网络排查11. `ss` —— 查看网络连接和监听端口12. `ip` —— 查看网卡与路由13. `tcpdump` —— 抓包分析四、历史监控与深度定位14. `sar` —— 查看历史性能数据15. `strace` —— 查看进程系统调用16. `perf` —— 分析 CPU 性能热点五、最后记住这张排障表排查步骤Linux 运维生产故障排查与工具使用手册一、生产排障总流程二、故障一:服务器负载突然升高排查步骤三、故障二:CPU 使用率达到 100%排查步骤生产中重点考虑的原因四、故障三:内存不足、进程被 OOM Killer 杀死排查步骤五、故障四:磁盘空间使用率达到 100%排查步骤六、故障五:磁盘 I/O 延迟高,业务响应变慢排查步骤七、故障六:端口正常,但业务访问失败排查步骤八、故障七:TCP 连接很多,连接建立或请求处理异常排查步骤九、故障八:进程存在,但业务没有响应排查步骤十、故障九:服务器网络丢包或延迟高排查步骤十一、故障十:故障已经恢复,但不知道刚才发生了什么排查步骤十二、生产环境操作前的安全检查十三、建议怎样练习这本手册实战学习清单Linux 性能排查命令速查手册一、CPU、系统负载、内存1.uptime—— 查看系统负载命令:uptime输出指标含义重点判断up系统运行时间判断系统运行了多久users当前登录用户数仅作参考load average最近 1、5、15 分钟平均负载判断系统负载是否持续偏高关键参数: 无常用必记参数。注意: Load Average 不是 CPU 使用率,还包括处于不可中断睡眠状态的任务。需要结合 CPU 核数、top、vmstat判断。2.top—— 查看进程和系统实时状态命令:top top -c top -o %CPU top -o %MEM关键参数:参数含义-c显示完整命令行-o %CPU按 CPU 使用率排序-o %MEM按内存使用率排序重点观察指标:指标含义重点判断load average1、5、15 分钟平均负载是否持续高负载%Cpu(s) us用户态 CPU 使用率应用程序是否消耗较多 CPU%Cpu(s) sy内核态 CPU 使用率系统调用、内核处理是否偏多%Cpu(s) waCPU 等待 I/O 的时间比例是否存在 I/O 等待%Cpu(s) idCPU 空闲比例是否还有 CPU 余量PID进程 ID定位目标进程%CPU进程 CPU 使用率找出高 CPU 进程%MEM进程内存占比找出内存占用高的进程RES进程实际驻留物理内存判断进程实际占用的物理内存规模VIRT进程虚拟内存总量不等于实际物理内存占用交互快捷键:P按 CPU 排序,M按内存排序,1展开各 CPU 核心,q退出。3.vmstat—— 查看系统综合性能命令:vmstat vmstat 1 5 vmstat -w 1 5关键参数:参数含义1每隔 1 秒采样5共输出 5 次采样-w宽格式显示,减少字段挤在一起的问题重点观察指标:字段含义重点判断r等待运行或正在运行的任务数持续高于 CPU 核数时,需关注 CPU 竞争b处于不可中断睡眠的任务数持续偏高需排查 I/O 等等待swpd已使用的交换空间判断是否使用 Swapfree空闲内存不能单独用来判断内存是否不足si每秒从 Swap 换入的数据量持续非零需关注内存压力so每秒换出到 Swap 的数据量持续非零需关注内存压力bi每秒从块设备读入的数据量观察块设备读取活动bo每秒写入块设备的数据量观察块设备写入活动in每秒中断次数异常升高时结合设备和负载分析cs每秒上下文切换次数过高时关注线程竞争、调度开销us用户态 CPU 时间比例应用程序消耗sy内核态 CPU 时间比例内核处理开销idCPU 空闲时间比例CPU 空闲程度waI/O 等待时间比例结合磁盘指标排查 I/O 瓶颈st虚拟机被宿主机抢占的 CPU 时间比例虚拟化环境中关注宿主机资源竞争注意:第一行通常是自系统启动以来的平均统计,后续行才是采样间隔内的数据。4.mpstat—— 查看各 CPU 核心状态命令:mpstat -P ALL 1 mpstat -P 0 1 5关键参数:参数含义-P ALL显示所有 CPU 核心-P 0只显示 CPU 01每秒采样5采样 5 次重点观察指标:字段含义重点判断%usr用户态 CPU 使用比例应用程序消耗%sys内核态 CPU 使用比例内核处理开销%iowaitCPU 等待 I/O 的比例关注存储 I/O 是否拖慢任务%idleCPU 空闲比例越低说明 CPU 越忙%steal虚拟机被宿主机抢占的比例持续偏高需关注宿主机竞争如果总 CPU 使用率不高,但单个核心很忙,用mpstat -P ALL 1检查是否存在单核瓶颈。5.free—— 查看内存使用情况命令:free -h free -m free -w关键参数:参数含义-h自动选择易读单位,如 MiB、GiB-m以 MiB 显示-w分开显示 Buffer 和 Cache(取决于版本支持)重点观察指标:字段含义重点判断total总内存系统物理内存规模used已使用内存结合缓存和可用内存判断free完全空闲的内存不应单独作为内存不足的依据buff/cache缓冲与缓存占用很多情况下可按需回收available预计无需明显交换即可供应用使用的内存判断内存是否紧张的优先指标Swap交换空间的总量、使用量和剩余量结合vmstat的si/so判断是否有持续交换活动6.ps—— 查看进程快照命令:ps aux ps aux --sort=-%cpu ps aux --sort=-%mem ps -ef关键参数:参数含义auxBSD 风格显示全部用户的进程信息-ef显示完整进程列表及父进程信息--sort=-%cpu按 CPU 使用率降序排列--sort=-%mem按内存使用率降序排列重点观察指标:字段含义PID进程 ID

相关新闻

从3.23学习笔记拆解:一套可复用的知识管理流程

从3.23学习笔记拆解:一套可复用的知识管理流程

3月23号晚上,我合上电脑前顺手给当天的学习笔记补了一行"一句话结论":**缺失值处理的本质是"三选一"——删除、填充、保留,选哪个取决于缺失机制和数据用途。**写完这行字,我意识到这份笔记已经具备了自己一直…

2026/10/14 20:36:56 阅读更多 →
Django部署性能调研:Gunicorn、Uvicorn与Docker实测对比

Django部署性能调研:Gunicorn、Uvicorn与Docker实测对比

1. 为什么突然想搞一次 Django 部署性能调研先说个大实话:Django 项目本地跑得飞起,一上服务器就卡成 PPT,这种事儿我见过太多次了。而且更诡异的是,同样的代码,有的人用 Nginx Gunicorn 部署,有的人用 Uv…

2026/10/14 20:36:56 阅读更多 →
C++编译期字符串加密:constexpr与模板元编程的防逆向实践

C++编译期字符串加密:constexpr与模板元编程的防逆向实践

前阵子帮朋友排查一个内部工具被批量抓包的问题,翻到某个模块的可执行文件时,说实话我没费什么劲——在二进制里直接strings一拉,一串协议关键字、路径、还有几个带明显特征的报错文案,整整齐齐摆在那。那一刻我特别感慨&#xff…

2026/10/14 20:35:54 阅读更多 →

最新新闻

Vold与Rild架构深度对比:Android系统层守护进程的设计精髓

Vold与Rild架构深度对比:Android系统层守护进程的设计精髓

做Android系统层开发这些年,我始终觉得有两个native守护进程是所有做Framework、做系统定制的人都绕不开的:一个是负责存储卷管理的Vold,另一个是负责电话通信的Rild。这本书第8章把这两个东西放到一起讲,初看有点怪——Vold是管文…

2026/10/15 6:06:41 阅读更多 →
Android系统定制必读:Vold与Rild守护进程架构与排障实战

Android系统定制必读:Vold与Rild守护进程架构与排障实战

这章我前后翻了三遍,每次读都有新收获。Vold和Rild这两个名字,凡是做过Android系统定制或者ROM开发的人都不会陌生:一个管存储,一个管电话,看起来八竿子打不着,但都属于“用户空间最接近内核硬件”的那一层…

2026/10/15 6:06:41 阅读更多 →
ATML标准实战解析:基于XML的测试信息模型如何解决ATS接口难题

ATML标准实战解析:基于XML的测试信息模型如何解决ATS接口难题

搞测控系统这些年,我最大的感受就是:方案好写,接口难缠。同一个被测对象,上午在A台架上测完,下午换个台架,程序和配置往往要重写一遍;测试报告想统一归档,各台位导出的格式却五花八门…

2026/10/15 6:06:41 阅读更多 →
Spring AI智能客服流式输出可靠性:事件总线+Redis Pub/Sub+断线补拉

Spring AI智能客服流式输出可靠性:事件总线+Redis Pub/Sub+断线补拉

1. 客服系统上线前夜,我们被三个问题卡住了做过客服系统的人都有一个共识:功能跑通不难,难的是让它敢在真实流量下上线。我们这套基于 Spring AI 的智能客服系统,在测试环境里跑得挺漂亮,单轮问答准确率能到 90% 以上&…

2026/10/15 6:06:41 阅读更多 →
Linux文件IO深度解析:文件描述符、页缓存与排查实战

Linux文件IO深度解析:文件描述符、页缓存与排查实战

1. 先把“文件”这件事看清:描述符与内核对象做Linux开发这几年,我发现自己反复要给新同事讲同一个话题——文件IO。很多人一开始都觉得文件操作嘛,open、read、write、close,API背下来不就行了?但真到线上排查问题&am…

2026/10/15 6:06:41 阅读更多 →
猜数字游戏:从状态机到二分查找的编程实战训练指南

猜数字游戏:从状态机到二分查找的编程实战训练指南

1. 猜数字游戏:一个被低估的编程训练场1.1 为什么我把猜数字当成正式项目来对待很多人觉得猜数字游戏是编程入门第一课的标配,写个随机数、循环读入、判断大小、给出反馈,几十行代码完事。说实话,我最初也是这么想的。直到有一次&…

2026/10/15 6:05:40 阅读更多 →

日新闻

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

1. 为什么选择容器化方式部署 LoRa 网络服务LoRa 物联网项目落地时,网络服务器是整个链路的核心枢纽。它负责接收网关上报的数据包、完成去重与解密、再把有效载荷分发给上层应用。早期大家习惯把网络服务器直接装在物理机上,依赖一堆系统库和特定版本的…

2026/10/15 0:00:46 阅读更多 →
共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

1. 共享推理服务里,扩缩容到底难在哪做过大模型推理服务部署的人,大概都经历过这样的场景:一个团队共用一套推理集群,A 业务跑的是 7B 的小模型,B 业务跑的是 72B 的大模型,C 业务白天流量高、晚上几乎归零…

2026/10/15 0:00:46 阅读更多 →
Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

1. 引子:一次内核恐慌引发的追查先从一个真实场景说起。某次我给一台老旧的嵌入式设备折腾系统裁减,为了把启动时间压进两秒以内,我手贱地把一串自认为“没用”的 systemd 服务给 disable 了,其中就包括systemd-remount-fs.servic…

2026/10/15 0:00:46 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/14 16:30:29 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →