电脑在使用中性能的工作状态是非常重要的,性能使用情况会运行到系统的稳定和运行速度,我们也是希望通过性能的监控和系统故障监控来了解性能的使用情况。在linux 系统中性能监控主要是以CPU处理器、磁盘、内存以及网络状况的标准来衡量的,下面先来了解下系统性能的分析标准。
一、性能分析的标准:
衡量一个系统的性能状态,主要从系统的响应时间和系统的吞吐量进行分析。
系统的响应时间:指发出请求的时刻到用户获得返回结果所需要的时间
系统的吞吐量:指在给定时间段内系统完成的交易数量,如系统的吞吐量越大,说明系统在相同时间内完成的用户或系统的请求越多
二、监控指标
(1)、内存监控
linux的内存分为物理内存和虚拟内存,物理内存是真实存在,虚拟内存是交换分区,从硬盘空间分出空间来补充
内存监控的命令:
vmstat 主要对系统的虚拟内存,进程,cpu等进行监视。
如:要以5秒为时间间隔,连续收集20次的数据,命令为 vmstat 5 20,结果收集如下:
数据中各字段分析:
字段类别说明
r进程在运行队列中等待的进程数
b进程等待的io进程数
Swpd内存已使用的交换内存
free内存空闲的物理内存
buff内存用作缓存的内存数
cache内存高速缓存的物理内存
Si交换页面从磁盘交换到内存的交换页数量
so交换页面从内存交换到磁盘的交换页数量
bi块设备发送到块设备的块数
bo块设备从块设备接收的块数
in系统中断数
cs系统上下文切换数
us处理器用户进行使用的cpu时间
sy处理器系统进程使用的cpu时间
id处理器Cpu空闲时间
wa处理器等待io消耗时间
st处理器从虚拟设备获得的时间
cpu监控
linux系统监控CPU的系能主要关注3个指标:运行队列,CPU使用率和上下午切换.
运行队列:每个CPU都会维护一个运行队列,调度器会不断的轮询让队列中的进程运行,直到进程运行完成将其在队列中删除
cpu使用率:可分为用户的进程,系统进程,等待IO 空闲等占用CPU的百分比
上下文切换:指通过CPU轮询的方法,linux能够支持多任务同时运行,当一个进程用完时间片或者被优先级高的进程抢占时间片后,会被转到cpu的等待队列中,而让其他进程在cpu中运行
(2)、磁盘监控
iostat 可以对系统活动的磁盘进行监控,并统计数据使用情况
命令格式: iostat 命令选项
常用命令选项:
-c 只显示cpu的使用情况
-d:只显示磁盘的使用情况
-k:以KB/s 作为统计结果单位
-m:以MB/s作为统计结果单位
-n:显示NFS的统计信息
-p:显示设备所有分区统计信息
-t:在每次统计结果中显示时间
如:以KB为单位,不显示CPU数据,每5s涮新一次,命令如下:
iostat -t -d -k 5
(3)、网络监控
网络监控主要关注;网卡的吞吐量是否过载和网络是否稳定,是否出现丢包现象
可用sar命令查看
如sar -n DEV 5 3
对于网络的错误信息统计
sar -n EDEV 5 3
(4)、综合监控工具
top 是一个交互式性能监控工具,可以同时监控内存,cpu 进程 用户数据 运行时间等信息.如使用如下:
通过对内存监控、CPU处理器监控、网络监控和综合监控工具,这样我们能够更好的掌握系统性能情况。