directoryinfo 读取 映射磁盘_LoaRunner性能测试系统学习教程:磁盘监控(5)

123634cede94f86d7b0f88cf81509813.png

上期我们讲到LoaRunner性能测试内存监控,这期我们讲LoaRunner性能测试磁盘监控。

磁盘监控

在介绍磁盘监控前,先介绍固定磁盘存储管理的性能,固定磁盘存储器的结构层次如图所示。

3476a3ed68c72e00d530cec8950de643.png

每个单独的磁盘驱动器称为一个物理卷(PV)它们各有一个名称,例如/dev/hdisk0,如果物理卷在使用,那么它属于一个卷组(VG)卷组中所有物理卷划分成相同大小(如果卷组包含的物理卷小于4GB,则缺省值是4MB,对于更大的磁盘该值为8MB或更多)的物理分区(PP)。

根据空间分配的用途,每个物理卷可以分成五个区域,根据磁盘驱动器的不同,每个区域中物理分区的数量也不同。在每个卷组中定义一个或多个逻辑卷(LV),每个逻辑卷由一个或多个逻辑分区组成,每个逻辑分区至少对应一个物理分区,如果指定为逻辑卷制作镜像,就需要分配额外的物理分区存储每个逻辑分区的额外副本,虽然逻辑分区是连续编号的,但底层的物理分区不必连续或邻接。 逻辑卷为系统用途提供服务(例如页面调度),但是每个容纳常规系统数据或用户数据或程序的逻辑卷都包含一个单独的日志文件系统(JFS或增强型JFS),每个JFS由页大小(4096字节)块的池组成。当数据要写入某个文件中时,会为这个文件分配一个或多个额外的块,这些块彼此和与先前分配给这个文件的其它块之间可能邻接也可能不邻接。

图中显示了一个文件系统中可能发生的糟糕情况,这个文件系统已经使用了很长时间且没有重新组织过,文件/op/filename物理记录在很多块上,这些块在物理位置上相互远离,不是邻接的,顺序读取这个文件将导致许多费时的寻道操作。虽然操作系统的文件在概念上是一个顺序且邻接的字节字符串,但物理实现可能非常不同,在一个文件系统中对逻辑卷的多次扩展和分配/释放/再分配活动可能出现磁盘分段,当一个文件系统的可用空间由大量小块空间组成,那么就会出现碎片,就不可能在邻接的块中写出新的文件。

在高度碎片化的文件系统中访问文件可能导致大量的寻道操作和较长的I/O响应时间(寻道等待时间决定I/O响应时间),例如,如果顺序访问文件,那么由大量广泛分散的小块组成的文件布局比文件块紧密相连的布局需要更长的寻道时间,当文件缓存在内存中时,文件布局对于I/O性能的影响减小,在操作系统中打开一个文件时,它被映射到虚拟内存中一个永久数据段,这个段代表该文件的虚拟缓冲区,文件的块直接映射到段的页面中,VMM管理段页面,根据需要读取文件块到段页面中(当它们被访问时)。有几种环境会导致VMM将一页写回到磁盘上文件中相应的块,但如果某块最近已经被访问,VMM通常会在内存中保留该页,因此,频繁访问的页倾向于在内存中停留较长时间,所以不需要物理磁盘访问就可以满足对相应块的逻辑文件访问,在某些地方,用户或系统管理员可以选择在逻辑卷中重新组织文件布局以及在物理卷中重新组织逻辑卷布局,从而减少磁盘碎片以及更均匀地分配总的I/O负载。

关于磁盘的监控应该重点考虑以下几方面的内容:第一:查找当前最活跃的文件、文件系统和逻辑卷 a)“热”文件系统是定位在一个物理驱动器上还是分散在多个物理驱动器上; b)调页空间是否支配磁盘应用? c)是否有足够的内存来高速缓存那些由正在运行进程使用的文件页面? d)应用程序是否执行许多同步(非高速缓存)的文件I/O? 第二:查看使用率最高的物理卷 第三:测试磁盘读写时间 一般的在对磁盘配置或调整参数做出重要改动之前,需要先对当前的配置和性能进行监控,得到一条评估的基线数据。 在系统处于工作负载高峰时期或者运行一个关键应用程序时,可以使用带间隔时间参数的iostat命令来开始评估。 iostat53报告如图所示。

2fdf704e728193ae6b4731625ac2fd4b.png

注意:如果在Linux未发现该命令,那么需要先安装sysstat包安装命令为rpm–ivhsysstat-7.0.2-3.el5.i386sysstat包中包括iostat、mpstat、sar和sa四个工具。

关于CPU统计信息列(%usr、%sys、%idle和%iowait)提供了CPU使用的情况,该信息也在vmstat命令输出信息中存在,其对应的列名为us、sy、id和wa。在运行一个应用程序的系统上,I/O等待时间的高百分比可能与工作负载有关,在具有很多进程的系统上,一些可能在运行,而另一些可能在等待I/O,在这种情况下,%iowait可能很小或者为零,因为正在运行的进程“隐藏”了一些等待时间,但是%iowait并不代表磁盘可能不存在瓶颈。如果iostat命令表明CPU受限的情况不存在,并且%iowait时间大于20%,则可能出现I/O或磁盘受限情况,这一情况可能在缺少实内存的情况下由过多调页产生,也可能是由于不平衡的磁盘负载、碎片数据或应用模式而产生,对一个不平衡负载来说,同样的iostat报告提供了必要的信息,但是有关文件系统或逻辑卷,即逻辑资源来说,必须有使用诸如filemon或fileplace工具来获取信息。 如果需要指定磁盘名称,可以使用-d选项。 例如:iostat–dsda1,报告如图所示。

41eb6fedc152c8bc25b5a90f6c5013d0.png

-tps表示每秒钟物理磁盘传送的次数,一次传送是从设备驱动程序到物理磁盘的一次I/O处理请求,多重逻辑请求可以组合成单一的磁盘I/O请求,传送的大小是不确定的。-Blk_read/s显示在测量间隔中每秒钟从物理卷中读取的数据量(以KB/s为单位)。-Blk_wrtn/s显示在测量间隔中每秒写入物理卷的数据量(以KB/s为单位)。-Blk_read显示在测量间隔中总的从物理卷中读取的数据量(以KB为单位)。-Blk_wrtn显示在测量间隔中总的写入物理卷的数据量(以KB为单位)。

使用vmstat命令也可以监控磁盘的性能,关于vmstat命令的使用在cpu章节中进行了详细的介绍,这里就不详细介绍了,关于vmstat命令输入报告中需要重点关注in列的内容,in列的内容表示评估间隔中(每秒)发生的硬件或设备中断的次数,中断的示例为磁盘请求完成和10毫秒的时钟中断,即一秒钟发生100次中断。sar命令是用来收集关于系统的统计数据的标准UNIX命令,通过该命的-d选项,可以详细的查看磁盘I/O的统计信息。例如sar –d 3 3的报告如图所示。

eefc94163b9c14d76e92fedfe8c6d5be.png

%busy服务传送请求时,时间设备繁忙程度。avque那段时间内所有从适配器到设备的未完成请求的平均数,可能有附加的I/O操作在设置驱动程序队列中,如果存在瓶颈,这个数字将是一个很好的指示符。r+w/s进出设备的读/写传送次数,这同iostat命令中的tps列内容一致。blks/s以512字节为单位传送的字节数。Avwait事物等候服务的平均次数(队列长度),传送请求在队列中空等候的平均时间(以毫秒为单位)。avserv平均每次搜索的毫秒数,设备服务每次传送请求的平均时间(包括搜索时间、转动等待时间和数据传送时间)(以毫秒为单位)。如果需要测试磁盘写能力,使用以下命令time dd if=/dev/zero of=/test.dbfbs=8k count=300000因为/dev/zero是一个伪设备,它只产生空字符流,对它不会产生I/O,所以I/O都会集中在of文件中,of文件只用于写,所以这个命令相当于测试磁盘的写能力。其中300000表示写的次数。

0107878e963fd8cc75e3ceee0622e665.png

如果需要测试磁盘读能力,使用以下命令time ddif=/dev/sda1 of=/dev/null bs=8kcount=300000因为/dev/sda1是一个物理分区,对它的读取会产生I/O,/dev/null是伪设备,相当于黑洞,of到该设备不会产生I/O,所以,这个命令的I/O只发生在/dev/sdb1上,也相当于测试磁盘的读能力。其中300000表示读的次数。

1d73e8de23cfcc2b4b8710f9dd7edebe.png

如果需要测试磁盘同时读写能力,使用以下命令time dd if=/dev/sda1 of=/test1.dbf bs=8kcount=300000这个命令下,一个是物理分区一个是实际的文件,对它们的读写都会产生I/O(对/dev/sda1是读,对/test1.dbf是写),假设他们都在一个磁盘中,这个命令就相当于测试磁盘的同时读写能力。其中300000表示读的次数。

35e595a182720dd3bff263a62b352f3d.png

一般来说,高的%iowait表明系统存在一个应用程序问题、缺少内存问题或低效的I/O子系统配置,例如,应用程序的问题可能是由于许多I/O请求,而不是处理许多数据。理解I/O瓶颈并且要清楚解决瓶颈问题的关键在于提高I/O子系统的效率。磁盘的灵敏度可以以下几种方式出现,并具有不同的解决方法,一些典型的解决方案如下:

  • 限制在特定的物理磁盘上活动逻辑卷和文件系统的数目,该方法是为了在所有的物理磁盘驱动器中平衡文件I/O;
  • 在多个物理磁盘间展开逻辑卷,该方法在当有一些不同的文件被存取时特别有用;
  • 为一个卷组创建多个Journaled文件系统(JFS)日志并且把它们分配到特定的文件系统中(最好在快速写高速缓存驱动器中),这对应用程序创建、删除或者修改大量文件特别是临时文件来说十分有用;
  • 如果iostat命令的输出结果表明负载的I/O活动没有被均衡地分配到系统磁盘驱动器中,并且一个或多个磁盘驱动器的使用率经常在70-80之间或更高,就得考虑重组文件系统,例如备份和恢复文件系统以便减少碎片,碎片将引起驱动器过多地搜索并且可能产生大部分响应时间过长;
  • 如果有迹象表明一小部分文件被一次又一次地读取,可以考虑附加的实存是否允许那些文件更加有效地缓存;
  • 如果负载的存取模式是随机占主导地位,可以考虑增加磁盘并把将那些随机存取的文件分布到更多更好多的磁盘中;
  • 如果负载的存取模式是顺序占主导地位并且涉及多个磁盘驱动器,可以考虑增加一个或多个磁盘适配器,也可以适当地考虑构建一个条带状逻辑卷来适应大型并且性能关键的顺序文件;
  • 使用快速写高速缓存设备;
  • 使用异步I/O;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/260131.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Eclipse新建web项目正常启动tomcat不报错,但不能访问项目的解决方法

原因: 虽然我手动添加了自己下载的tomcat,但是由于在Eclipse中创建Server时,“Server Locations”选项采用的时默认配置,即"Use workspace metadata(does not modify tomcat installation ),这意味着该Server不会改变TOMCAT的安装及部署目录&#…

oracle10g执行insert,oracle 10g 增强审计。表insert 及bind values

oracle 10g之前,可以审计对表的操作,但不能记录操作时的各个列的值。在10g中,已经可以审核并监控到具体的sql语句及内容了。要求10g以后的版本。alter system set audit_traildb_extended scopespfile;[more]示例;SQL> show us…

点击按钮 变换图片

<html xmlns"http://www.w3.org/1999/xhtml"><head><meta http-equiv"Content-Type" content"text/html; charsetutf-8" /><title>变换图片</title><script type"text/javascript">function chan…

[邻接表] 学习邻接表的表示方法+BFS

算法导论上面的伪代码实现哦&#xff0c;没啥技术&#xff0c;不过这个邻接表表示法&#xff08;figo大神教的&#xff09;很nice。 简单说一下&#xff0c;head里面是放着自己节点后面链的最后一个元素在边池中的位置&#xff0c;边池里面成一个一个链状&#xff0c;像并查集&…

wordpress漏洞_WordPress XSS漏洞可能导致远程执行代码(RCE)

原作者&#xff1a; Ziyahan Albeniz在2019年3月13日&#xff0c;专注于静态代码分析软件的RIPS科技公司发布了他们在所有版本的WordPress 5.1.1中发现的跨站点脚本(XSS)漏洞的详细信息。该漏洞已在不同类别的各种网站上公布。有些人将其归类为跨站点请求伪造(CSRF)漏洞&#x…

centOS 6环境下安装R-3.3.2及Rstudio-server

【编译R语言】 1、下载安装R语言 # 下载R-3.3.2 $ wget https://cran.r-project.org/src/base/R-3/R-3.3.2.tar.gz# 安装R-3.3.2 $ tar -zxvf R-3.3.2.tar.gz $ cd R-3.3.2# 安装到默认目录下 --perfix/opt/R 或 /usr/local/lib64/R $ ./configure --prefix/opt/R --with-re…

DJ轮回舞曲网下载教程

该网站网址为&#xff1a;http://www.92cc.com/ 昨天有网友问我这个网站能不能下载。我告诉他&#xff0c;只要能在线试听的就能下载 于是今天出个临时教程 教大家如何获取试听的音乐URL。 第一步找到试听的网址&#xff0c;如&#xff1a; http://www.92cc.com/p97206.html 第…

【DP】【Asia - Harbin - 2010/2011】【Permutation Counting】

【题目描述】Given a permutation a1, a2,...aN of {1, 2,..., N}, we define its E-value as the amount of elements where ai > i. For example, the E-value of permutation {1, 3, 2, 4} is 1, while the E-value of {4, 3, 2, 1} is 2. You are requested to find h…

三丰三坐标编程基本步骤_三丰三坐标CRYSTA APEX S776

日本三丰MITUTOYO从1934年成立至今&#xff0c;专力致于精密测量仪器的研发和生产&#xff0c;在七十多年中&#xff0c;日本三丰量具MITUTOYO已成为世界最大综合测量仪器的制造商&#xff0c;它生产的产品包括千分尺&#xff0c;卡尺&#xff0c;千分表&#xff0c;高度尺&…

oracle的文件后缀名,转:数据文件的扩展名是ora,dbf,dat的,有什么区别?

只是通过扩展名来标识文件的类型而已&#xff0c;对于数据文件不管是ora/dat/dbf&#xff0c;都是一样的&#xff0c;没有什么区别。.dbf-数据文件&#xff0c; .tmp-临时文件&#xff0c;.log-重作日志文件(redo log file)&#xff0c; .ctl-控制文件.ora-参数文件&#xff0c…

Unity3D研究院之Android同步方法读取streamingAssets

版本Unity5.3.3 Android 小米pad1 首先非常感谢 守着阳光 同学在下面的留言。让我解决了一个大的谜团。。 开始我知道 StreamingAssets 路径是这个 path “jar:file://” Application.dataPath “!/assets/”; 文档在这里&#xff1a; http://docs.unity3d.com/Manual/Strea…

Codeforces Round 261 Div.2 D Pashmak and Parmida's problem --树状数组

题意&#xff1a;给出数组A&#xff0c;定义f(l,r,x)为A[]的下标l到r之间&#xff0c;等于x的元素数。i和j符合f(1,i,a[i])>f(j,n,a[j])&#xff0c;求有多少对这样的(i,j). 解法&#xff1a;分别从左到右&#xff0c;由右到左预处理到某个下标为止有多少个数等于该下标&…

JQuery AJAX提交中文乱码的解决方案

$.post(doSearch.action, {page : page,vip : vip,searchType : searchType,subtype : subtype,type : type,contentType: "application/x-www-form-urlencoded; charsetutf-8", keyword : keyword}, function(data) //回传函数{var val;}); 解决这个中文乱码问题&am…

列举ospf的5种报文类型_危险品货物各种包装类型以及装箱技巧

对于危险货物来说&#xff0c;其危险性的大小除与货物的本身性质有关外&#xff0c;还与货物的包装方式密切相关。因而&#xff0c;危险货物进箱条件的确定&#xff0c;也必须考虑到货物的包装方法。一、集装箱内径20GP内径&#xff1a;长5.8M*宽2.34M*高2.34M40GP内径&#xf…

linux一行多个命令行,如何在一行中运行多个Linux命令

对于每个Linux管理员来说&#xff0c;熟练使用各种命令行是他们的特性。但对于普通用户来说&#xff0c;可能还是有难度&#xff0c;您需要继续练习Linux命令&#xff0c;并找到使该任务更有效的方法。实现这个特定目标的一种方法是学习一些技巧&#xff0c;这些技巧可以提高发…

Java 数组基础

数组 数组&#xff08;Array&#xff09;&#xff1a;相同类型数据的集合。 定义数组 方式1&#xff08;推荐&#xff0c;更能表明数组类型&#xff09; type[] 变量名 new type[数组中元素的个数]; 比如&#xff1a; int[] a new int[10]; 数组名&#xff0c;也即引用a&…

车辆跟驰模型matlab代码实现_MATLAB——考虑驾驶员特性及前车速度的快速路模型...

重发一下之前误删的一篇~目前大多数元胞自动机模型并没有考虑前车速度&#xff0c;大多数同向行驶的模型中车辆都是处在一个完全跟车的状态&#xff0c;无论前车是加速还是减速&#xff0c;后车驾驶者都只是根据自己的车速判断是减速跟驰还是变换车道来寻求寻求更合理的行驶状态…

linux nc命令

参考 :http://www.linuxso.com/command/nc.html NC 全名 Netcat (网络刀)&#xff0c;作者是 Hobbit && ChrisWysopal。因其功能十分强大&#xff0c;体积小巧而出名&#xff0c;又被大家称为“瑞士军刀”。nc - TCP/IP swiss army knife nc 常用于溢出、反向链接、上传…

收藏一些自己认为好的网站或博客

月光博客 seo每天一贴 虎嗅网 李岩的博客 中邮阅读网&#xff0c;专门看电子期刊的&#xff0c;很不错的免费阅读期刊网。 seay web安全技术博客: http://www.cnseay.com 陆陆续续编辑中... 转载于:https://www.cnblogs.com/caoyuanzhanlang/archive/2013/01/05/2846086.html

shell 判断字符串相等_编程小短文:Bash子字符串还在用==?试试=~性能瞬间飙升100倍...

引言Bash 是 Linux 系统下钦定的 shell。你可以通过cat /etc/shells查看当前系统支持的 shell 种类。Bash 不但是系统管理员与内核交互的利器&#xff0c;且是一种语言&#xff0c;可以编写大多数系统的自动化脚本&#xff0c;用于简化运维工作。今天我们学习一个知识点&#x…