news 2026/6/10 20:25:07

性能监控(操作系统层面-CPU)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
性能监控(操作系统层面-CPU)

性能监控(操作系统层面-CPU)

一、性能监控概述

1.监控的重要性

  • 必须做监控:做性能测试必须监控,否则不知道问题出在哪里

  • 监控是性能测试的核心环节

2.监控的两个维度

  • 操作系统维度:所有系统都必须监控(通用)

    • 监控对象:CPU、内存、网络、磁盘

    • 适用性:无论什么语言(PHP、Python、Java、Go、C)都需要

  • 应用程序维度:监控特定语言的应用程序

    • 如:Java应用、C++应用、Python应用等

二、监控方法论

1.学习路径建议

  • 先学底层:先掌握操作系统原生命令

  • 再学工具:再学习高级监控工具/平台

  • 原因

    • 面试重点考察基础命令

    • 理解原理后才能更好使用高级工具

    • 类比:先学SQL再学可视化工具(如Navicat)

2.监控原则

  • 掌握根本:底层原生命令是基础

  • 理解原理:知道监控数据如何计算得出

三、CPU监控详解

1.监控命令:top

  • 功能:Linux下的实时交互式监控工具

  • 监控范围:CPU、内存、进程

  • 刷新频率:默认每3秒刷新一次

  • 退出方式:按Ctrl + C

2.CPU监控关键指标

(1)CPU使用率计算
  • 核心公式CPU使用率 = 100% - %ID

  • %ID(idle):CPU空闲率

  • 示例:%ID = 98.3%,则CPU使用率 = 1.7%

(2)CPU使用率各组成部分
指标英文含义说明
%ususer用户进程占用CPU用户自己启动的进程(如Tomcat、MySQL)
%sysystem系统进程占用CPU操作系统自带进程
%ididleCPU空闲率可直接计算CPU使用率
%wawaitCPU等待磁盘操作时间占比值高表示磁盘慢/有瓶颈
%hihard interrupt硬中断时间占比硬件(鼠标、键盘、网卡)中断造成
%sisoft interrupt软中断时间占比软件(多线程上下文切换)造成
(3)理解要点
  • 计算基础:CPU使用率基于时间统计

  • 计算方法:CPU处理任务时间 ÷ 总时间 = CPU使用率

  • 统计周期:top命令统计过去3秒的平均值

3.多核CPU监控

(1)关键前提
  • 每个CPU核心:同一时刻只能执行一个任务

  • 多核CPU:n个核心同一时刻可执行n个任务

(2)多线程实现原理
  • 单核多线程:通过快速切换实现"同时"运行多个线程

  • 切换速度:CPU切换速度极快,人类无法感知

  • 实际并发:1万个并发线程用8核CPU处理 → 需要快速切换

(3)查看多核使用情况
  • 默认显示:所有CPU核心的平均值

  • 按数字1:显示每个核心的详细使用情况

  • 作用

    • 查看CPU核心数

    • 分析各核心负载是否均衡

4.进程监控与排序

(1)进程列表
  • 显示内容:各进程消耗的CPU和内存数据

  • 默认排序:按CPU使用率降序排列

  • 内存排序:按大写M键切换到内存使用率排序

  • 切回CPU排序:按P键切回CPU排序

(2)关键字段解析
  • PID:进程ID

  • %CPU:进程占用CPU百分比

  • %MEM:进程占用内存百分比

  • RES:进程占用的物理内存(单位:KB)

    • 示例:277MB ≈ 15%内存使用率(基于2GB总内存)

(3)重要特性
  • 进程%CPU可能超过100%

    • 原因:统计的是进程占用所有CPU核心使用率之和

    • 上限:n核CPU上限为 n × 100%

    • 示例:16核CPU上,进程%CPU可达1600%

  • 与整体CPU使用率的区别

    • 整体CPU:所有核心的平均值(上限100%)

    • 进程CPU:占用各核心之和(上限为n×100%)

5.CPU问题排查流程

(1)排查步骤
  1. 发现CPU使用率高:top命令看到整体CPU使用率高

  2. 定位问题进程

    • 查看进程列表(默认按CPU排序)

    • 找到占用CPU最高的进程

  3. 分析归属

    • 如果是压测程序 → 程序本身问题

    • 如果是其他程序 → 系统其他问题

  4. 深入分析:按1查看各核心负载情况

(2)实战案例
  • 挖矿病毒案例

    • 现象:CPU持续100%但无压测

    • 排查:top发现陌生高CPU进程

    • 确认:百度搜索进程名确认为挖矿程序

    • 解决:重装系统、修改密码

  • 教训:定期检查服务器异常进程

四、监控实战技巧

1.产生测试负载

  • 目的:模拟真实场景观察监控数据变化

  • 方法

    • 使用JMeter等压测工具

    • 对Web应用接口施加压力

    • 观察监控数据动态变化

2.监控时机

  • 压测期间:持续监控系统资源使用情况

  • 日常运维:定期检查异常进程

  • 问题排查:出现性能问题时第一时间监控

3.监控数据解读

  • 动态变化:监控数据随负载变化而变化

  • 基准对比:建立系统正常状态下的基准值

  • 阈值报警:设定关键指标的报警阈值

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/9 21:31:03

vue+uniapp+ssm小程序基于Android的学籍异动档案管理平台-

文章目录摘要主要技术与实现手段系统设计与实现的思路系统设计方法java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!摘要 该学籍异动档案管理平台基于Vue.js、Uniapp和SSM(SpringSpring MVCMyBatis&…

作者头像 李华
网站建设 2026/6/10 9:02:33

知识蒸馏能否进一步压缩HunyuanOCR?小型化衍生模型研究方向

知识蒸馏能否进一步压缩HunyuanOCR?小型化衍生模型研究方向 在移动设备性能日益提升、边缘计算场景不断扩展的今天,一个核心问题正变得愈发关键:我们是否真的需要将百亿参数的大模型部署到每一块手机芯片上?对于像OCR这样广泛应用…

作者头像 李华
网站建设 2026/6/10 12:46:19

一站式OCR解决方案:HunyuanOCR支持检测、识别、字段抽取与拍照翻译

一站式OCR解决方案:HunyuanOCR支持检测、识别、字段抽取与拍照翻译 在金融票据自动录入、跨国合同解析、视频字幕提取等现实场景中,企业常常面临一个共同难题:如何将图像中的文字高效、准确地转化为结构化数据?传统OCR系统依赖多…

作者头像 李华
网站建设 2026/6/10 12:54:24

HunyuanOCR与OCRopus比较:学术研究场景下的适用性分析

HunyuanOCR与OCRopus比较:学术研究场景下的适用性分析 在数字人文、语言学和跨文化研究日益依赖自动化文本提取的今天,一个关键问题摆在研究者面前:是选择高度集成、开箱即用的新一代大模型OCR系统,还是坚持使用可深度干预的传统…

作者头像 李华
网站建设 2026/6/10 12:55:35

BookCatalog图书编目:图书馆自动化管理系统升级

BookCatalog图书编目:图书馆自动化管理系统升级 在高校图书馆的某个清晨,管理员正对着一摞刚采购的外文原版教材发愁——这些书没有现成的电子元数据,每本都需要手动录入书名、作者、ISBN。这个过程不仅耗时,还容易出错。而就在隔…

作者头像 李华
网站建设 2026/6/10 12:57:07

亲测好用8个AI论文写作软件,自考学生轻松搞定毕业论文!

亲测好用8个AI论文写作软件,自考学生轻松搞定毕业论文! 自考论文写作的救星,AI 工具如何帮你轻松应对 对于自考学生而言,撰写毕业论文是一项既重要又充满挑战的任务。从选题到成稿,每一个环节都可能让人感到压力山大。…

作者头像 李华