操作系统性能监控之CPU监控
发表于:2024-11-30 作者:千家信息网编辑
千家信息网最后更新 2024年11月30日,操作系统性能监控服务端程序除了应用本身性能外,依赖与服务器本身的性能,今天学习了如何监测服务器性能。包括:CPU、内存、网络IO和磁盘使用率。今天先看看如何监测CPU。CPU监控CPU使用率vmsta
千家信息网最后更新 2024年11月30日操作系统性能监控之CPU监控
操作系统性能监控
服务端程序除了应用本身性能外,依赖与服务器本身的性能,今天学习了如何监测服务器性能。包括:CPU、内存、网络IO和磁盘使用率。
今天先看看如何监测CPU。
CPU监控
CPU使用率
vmstat命令
oot@SSP001:[/root]vmstatprocs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 0 0 79484 90085784 591052 79229448 0 0 0 6 0 0 1 1 97 0 0
其中CPU部分代表cpu的监测数据。
具体含义如下:
名称 | 含义 | 英文 |
---|---|---|
us | 用户态CPU时间(百分比) | user time |
sy | 系统态CPU时间(百分比) | system time |
id | 空闲CPU时间(百分比) | Time spent idle |
wa | 等待IO的CPU时间 | Time spent waiting for IO |
st | 不知道什么鬼,忽略 | Time stolen from a virtual machine. Prior to Linux 2.6.11, unknown. |
参数中需要注意的是如果wa很高,代表IO等待时间很高,有可能是磁盘IO出现瓶颈。
mpstat
[root@Hwseeker-Adx02 ~]# mpstat -P ALL 10 1Linux 2.6.32-573.3.1.el6.x86_64 (Hwseeker-Adx02) 2018年01月23日 _x86_64_ (24 CPU)16时45分03秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle16时45分13秒 all 1.96 0.00 0.68 0.00 0.00 0.15 0.00 0.00 97.2116时45分13秒 0 8.32 0.00 1.83 0.00 0.00 0.20 0.00 0.00 89.6416时45分13秒 1 2.21 0.00 0.60 0.00 0.00 0.20 0.00 0.00 96.9816时45分13秒 2 2.23 0.00 0.61 0.00 0.00 0.30 0.00 0.00 96.8616时45分13秒 3 3.25 0.00 1.32 0.00 0.00 0.61 0.00 0.00 94.8216时45分13秒 4 0.20 0.00 0.20 0.00 0.00 0.00 0.00 0.00 99.6016时45分13秒 5 6.38 0.00 2.13 0.00 0.00 1.01 0.00 0.00 90.4916时45分13秒 6 1.20 0.00 0.40 0.00 0.00 0.00 0.00 0.00 98.4016时45分13秒 7 0.60 0.00 0.60 0.00 0.00 0.10 0.00 0.00 98.6916时45分13秒 8 0.60 0.00 0.40 0.00 0.00 0.00 0.00 0.00 98.9916时45分13秒 9 0.20 0.00 0.10 0.00 0.00 0.00 0.00 0.00 99.7016时45分13秒 10 1.10 0.00 0.20 0.00 0.00 0.00 0.00 0.00 98.7016时45分13秒 11 0.50 0.00 0.40 0.00 0.00 0.00 0.00 0.00 99.1016时45分13秒 12 2.92 0.00 0.70 0.00 0.00 0.10 0.00 0.00 96.2716时45分13秒 13 0.50 0.00 0.50 0.00 0.00 0.10 0.00 0.00 98.9016时45分13秒 14 6.90 0.00 1.93 0.00 0.00 0.61 0.00 0.00 90.5716时45分13秒 15 5.99 0.00 1.42 0.00 0.00 0.61 0.00 0.00 91.9816时45分13秒 16 0.10 0.00 0.10 0.00 0.00 0.00 0.00 0.00 99.8016时45分13秒 17 0.71 0.00 0.81 0.00 0.00 0.10 0.00 0.00 98.3816时45分13秒 18 0.40 0.00 0.30 0.00 0.00 0.00 0.00 0.00 99.3016时45分13秒 19 0.60 0.00 0.50 0.00 0.00 0.00 0.00 0.00 98.8916时45分13秒 20 0.30 0.00 0.40 0.00 0.00 0.00 0.00 0.00 99.3016时45分13秒 21 0.20 0.00 0.30 0.00 0.00 0.00 0.00 0.00 99.5016时45分13秒 22 0.30 0.00 0.30 0.00 0.00 0.00 0.00 0.00 99.4016时45分13秒 23 1.31 0.00 0.40 0.00 0.00 0.00 0.00 0.00 98.29
mpstat可以查看每个cpu的状态,可以发现应用中一些线程比其他线程消耗了更多CPU周期,还是所有线程基本平分CPU周期。如果是所有线程平分CPU周期,代表应用扩展性很好。
mpstat命令具体使用方法可以自行百度。这里我们需要关注的还是%usr/%sys/%iowait这几个字段。
top命令
[root@Hwseeker-Adx02 ~]# toptop - 16:51:46 up 762 days, 16:33, 1 user, load average: 0.65, 0.40, 0.29Tasks: 598 total, 1 running, 596 sleeping, 0 stopped, 1 zombieCpu(s): 1.6%us, 0.7%sy, 0.0%ni, 97.5%id, 0.0%wa, 0.0%hi, 0.1%si, 0.0%stMem: 132119192k total, 130669000k used, 1450192k free, 1157188k buffersSwap: 131071996k total, 4017704k used, 127054292k free, 88117860k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND36660 root 20 0 24.3g 4.7g 13m S 16.8 3.7 4401:08 java36888 root 20 0 24.4g 4.7g 13m S 14.8 3.8 4332:33 java52318 root 20 0 2353m 1.0g 39m S 5.9 0.8 67399:27 firefox 5631 root 20 0 1252m 29m 1924 S 2.0 0.0 22434:02 main21114 root 20 0 150m 13m 1364 S 2.0 0.0 664:08.76 redis-server
top命令不仅能监控用户态CPU、系统态cpu、空闲率,而且还会按照cpu使用率把进程列出来,使用起来很方便。
CPU程序调度队列
运行队列中是哪些正在等待可用CPU的轻量级进程。对于判断CPU是否满负荷运转很有帮助。
对于调度队列长度,该如何处理呢?
- 在很长一段时间里,运行队列的长度一直都超过cpu的核数的一倍,就需要关注,但不需要立即采取行动。
- 如果长时间是cpu核数的3~4倍或更高,就需要立即采取行动。
解决方法:
1.增加cpu
2.分析运行中的应用,改进使用率。如减少垃圾收集的频度。vmstat
oot@SSP001:[/root]vmstatprocs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----r b swpd free buff cache si so bi bo in cs us sy id wa st0 0 79484 90085784 591052 79229448 0 0 0 6 0 0 1 1 97 0 0
其中r列就是队列长度。
本博文内容为《Java性能优化权威指南》的读书笔记整理而来
时间
性能
队列
使用率
命令
线程
应用
系统
监控
代表
周期
百分
百分比
长度
服务
监测
运行
含义
方法
服务器
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
天采互联网科技
创建网课软件开发商
ip地址中不能发布信息的服务器
欧盟医疗器械数据库功能
配置数据库的主要作用
博物馆网络安全内容
数据库 uuid
桌面软件开发要求
根据上级部门网络安全
将网址发送给指定服务器
螺旋模型不适用大型软件开发
安徽六安软件开发培训费用
世界ol是用什么软件开发的
科摩多软件开发公司
服务器面板上第二个灯琥珀色
软考软件开发要考哪个高级证书
网络安全法行政相对人的概念
西安学习网络技术
数据库中text什么意思
vfp数据库编程入门
struts 数据库配置
宁波门店管理系统软件开发
服务器机箱能安装主板吗
聊天室数据库设计说明书
媒体信息网络安全专业排名
美女翻译软件开发
网络安全服务验收流程图
常用网络安全密匙
无人深空连接不到服务器
翼帆科技与移动互联网