linux磁盘I/O的性能评估


参考自:自学it网,http://www.zixue.it/

(1)使用iostat命令。

[test@localhost /]$ iostat -d
Linux 3.10.-862.9..el7.x86_64 (localhost.localdomain) 2018年10月11日 _x86_64_ ( CPU) Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 1.71 45.92 41.60
dm- 1.46 40.99 41.25
dm- 0.02 0.37 0.00 Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 0.00 0.00 0.00
dm- 0.00 0.00 0.00
dm- 0.00 0.00 0.00 Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 0.00 0.00 0.00
dm- 0.00 0.00 0.00
dm- 0.00 0.00 0.00

解释:
kB_read/s 每秒读取数据块数
kB_wrtn/s 每秒写入的数据块数
KB_read 读取的所有数据块数
kB_wrtn 写入的所有数据块数
如果kB_wrtn/s的值很大,表示写操作频繁,需要考虑优化磁盘或者优化程序。
如果kB_read/s的值很大,表示读操作频繁,可以将读取的数据放入内存中。

(2)使用sar评估磁盘性能

[test@localhost /]$ sar -d
Linux 3.10.-862.9..el7.x86_64 (localhost.localdomain) 2018年10月11日 _x86_64_ ( CPU) 16时38分09秒 DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
16时38分11秒 dev8- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
16时38分11秒 dev253- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
16时38分11秒 dev253- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 16时38分11秒 DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
16时38分13秒 dev8- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
16时38分13秒 dev253- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
16时38分13秒 dev253- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 平均时间: DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
平均时间: dev8- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
平均时间: dev253- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

解释:
await 表示平均每次设备I/O操作的等待时间(以毫秒为单位)。
svctm 表示平均每次设备I/O操作的服务时间(以毫秒为单位)。
%util 表示一秒钟有百分之几的时间用于I/O操作。
一般有如下评判标准:
svctm应该是小于await值的,而svctm的大小和磁盘性能有关,cpu、内存的负荷也会对svctm
的值造成影响,过多的请求也会间接的导致svctm值的增加。
await值的大小一般取决于svctm的值和I/O队列长度以及I/O请求模式,
如果svctm的值与await很接近,表示几乎没有I/O等待,磁盘性能很好。
如果await的值远大于svctm的值,则表示I/O队列等待太长,此时可以
通过更换更快的磁盘来解决问题。
%util项的值也是衡量磁盘I/O的重要指标,如果%util接近100%,表示磁盘产生
的I/O请求太多,I/O系统已经满负荷在工作,该磁盘可能存在瓶颈。
长期下去,势必影响系统的性能,可以通过优化程序或通过更换更高、
更快的磁盘来解决此问题。


linux磁盘I/O的性能评估的更多相关文章

  1. linux@64 获取时间的性能评估

    听人说gettimeofday 在64bit下有缓存,速度很快,测试下了,感觉不对啊.. #include <time.h> #include <sys/time.h> #in ...

  2. [转载]Linux服务器性能评估与优化

    转载自:Linux服务器性能评估与优化 一.影响Linux服务器性能的因素 1. 操作系统级 CPU 内存 磁盘I/O带宽 网络I/O带宽 2.        程序应用级 二.系统性能评估标准 影响性 ...

  3. 转贴---Linux服务器性能评估

    http://fuliang.iteye.com/blog/1024360 http://unixhelp.ed.ac.uk/CGI/man-cgi?vmstat ------------------ ...

  4. Linux服务器性能评估

    一.影响Linux服务器性能的因素 1. 操作系统级 CPU 内存 磁盘I/O带宽 网络I/O带宽 2. 程序应用级 二.系统性能评估标准 影响性能因素 影响性能因素 评判标准 好 坏 糟糕 CPU ...

  5. Linux性能评估命令

    Linux性能评估工具 https://www.cnblogs.com/dianel/p/10085454.html Linux性能评估工具 目录 介绍 负载:uptime 查看内核的信息: dmes ...

  6. Linux服务器性能评估与优化--转

    http://www.itlearner.com/article/4553 一.影响Linux服务器性能的因素 1. 操作系统级 Ø       CPU Ø       内存 Ø       磁盘I/ ...

  7. Linux服务器性能评估与优化(一)

    网络内容总结(感谢原创) 1.前言简介 一.影响Linux服务器性能的因素   1. 操作系统级         性能调优是找出系统瓶颈并消除这些瓶颈的过程. 很多系统管理员认为性能调优仅仅是调整一下 ...

  8. linux的内存性能评估

    linux的内存性能评估 参考自:自学it网,http://www.zixue.it/. (1)使用free指令监控内存,参数-m以M为单位显示,-h人性化显示单位. [test@localhost ...

  9. Linux服务器性能评估与优化

    一.影响务器性能因素 影响企业生产环境Linux服务器性能的因素有很多,一般分为两大类,分别为操作系统层级和应用程序级别.如下为各级别影响性能的具体项及性能评估的标准: (1)操作系统级别 内存: C ...

随机推荐

  1. 利用java自带的base64实现加密、解密

    package com.stone.util; import java.io.UnsupportedEncodingException; import sun.misc.*; public class ...

  2. CeontOS6.5安装php环境

    港湾云主机重装操作系统之后xshell无法连接:重启ssh:# service sshd restart -bash: vim: command not found:输入 rpm -qa|grep v ...

  3. Java获取2个日期里面的所有月份

    public static void main(String[] args) { String t1="2018-08-01"; t1 = t1.replaceAll(" ...

  4. 升级nodejs 与短小的n模块

    要用指令升级nodejs到新版本要先安装n模块 window用不了n模块  可以用 nvm-windows : https://github.com/coreybutler/nvm-windows n ...

  5. Spring中使用注解 @Scheduled 执行定时任务

    来自:http://blog.51cto.com/dwf07223/1557145 注解@Scheduled 可以作为一个触发源添加到一个方法中,例如,以下的方法将以一个固定延迟时间5秒钟调用一次执行 ...

  6. Sublime安装与配置

    1.到官网下载Sublime https://www.sublimetext.com/ 2.安装时选择添加到右键菜单 Add to explorer context menu 3.安装插件 菜单 to ...

  7. python爬虫入门六:Selenium库

    在我们爬取网页过程中,经常发现我们想要获得的数据并不能简单的通过解析HTML代码获取,这些数据是通过AJAX异步加载方式或经过JS渲染后才呈现在页面上显示出来. selenuim是一种自动化测试工具, ...

  8. 多线程并发情况下 重复insert问题

    代码逻辑: if(数据不存在){ insert(); } 线程启动后,发现数据库表中有相同的记录 解决方案 synchronized同步代码块即加同步锁,synchronized同步代码块的功能: 当 ...

  9. LeetCode(39) Combination Sum

    题目 Given a set of candidate numbers (C) and a target number (T), find all unique combinations in C w ...

  10. PHP 和 AJAX MySQL

    AJAX 可用来与数据库进行交互式通信. AJAX 数据库实例 在下面的 AJAX 实例中,我们将演示网页如何使用 AJAX 技术从 MySQL 数据库中读取信息. 在下拉列表中选择一个名字 (测试说 ...