性能测试-CPU性能分析,IO密集导致系统负载高

目录

IO密集导致系统负载高

使用top命令-观察服务器资源状态 

使用vmstat命令-观察服务器资源状态 

使用pidstat命令-观察服务器资源状态 

使用iostat命令-观察服务器资源状态 


IO密集导致系统负载高

stress-ng -i 10 --hdd 1 --timeout 100

-i :有多少个工作者进行,系统调用

--hdd:有多少个工作者进行,磁盘的写操作

使用top命令-观察服务器资源状态 

top:系统负载升高,有此可见sy有数据变化,相对于us来说,sy的数比较大,同时一开始的时候wa高达70%,并且sy和wa在相对地在变化,wa高可能就是在等待资源可能就是磁盘的问题

 性能测试-CPU性能分析,IO密集导致系统负载高_第1张图片

使用vmstat命令-观察服务器资源状态 

vmstat:swpd虚拟内存(交换分区)有数据,free空闲内存变小,buff缓冲区域有数据,cache缓冲缓冲使用增大,si,so有数据变化,bi,bo数据读写有明显的数据量,in,cs有明显变化,cs要比in大很多

(swpd磁盘虚拟出来的,转移内存的数据到交换分区,用于扩展,磁盘速度跟不上内存速度,所有si,so有对应数据变化才对)

性能测试-CPU性能分析,IO密集导致系统负载高_第2张图片

使用pidstat命令-观察服务器资源状态 

pidstat :cswch自愿上下文切换的数据明显比,非自愿上下文切换的数要大得多

性能测试-CPU性能分析,IO密集导致系统负载高_第3张图片

使用iostat命令-观察服务器资源状态 

 iostat:await有数据,有磁盘等待,r/s,w/s,rkB/s,wkB/s,avgrq-sz avgqu-sz,r_await ,w_await都有数据。

性能测试-CPU性能分析,IO密集导致系统负载高_第4张图片

针对以上情况,可以说明: 

通过top命令,观察整体情况:有大量磁盘操作是,会导致系统负载升高;磁盘操作频时,sy和wa数据值比较明显

通过vmstat命令,具体分析: 没存数据变化明显,bi,bo数据读写有明显的数据量,in中断,cs上下文切换均有明显变化,其中cs要比in的数据要大

通过pidstat命令,针对分析:cswch自愿上下文切换的数据明显比,非自愿上下文切换的数要大得多

通过iostat命令,针对分析发现:await有数据,有磁盘等待,磁盘写入频繁,因r_await ,w_await都有数据,其中w_await要比r_await的数据要大

综合上述数据得出:系统负载偏高,是由于磁盘读写频繁,其次是内存不足导致使用swpd,导致系统负载升高

所以解决办法如下:

  1. 使用RAID,磁盘矩阵
  2. 应用服务:(减少日志)
  3. 数据库服务器:(读、写数据)优化SQL,多数为读取数据时发生负载偏高
  4. 增加内存

你可能感兴趣的:(测试工程师,#,性能测试,性能测试,负载测试,jmeter,压力测试,单元测试)