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的安装及部署目录&#…

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

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

DJ轮回舞曲网下载教程

该网站网址为:http://www.92cc.com/ 昨天有网友问我这个网站能不能下载。我告诉他,只要能在线试听的就能下载 于是今天出个临时教程 教大家如何获取试听的音乐URL。 第一步找到试听的网址,如: 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年成立至今,专力致于精密测量仪器的研发和生产,在七十多年中,日本三丰量具MITUTOYO已成为世界最大综合测量仪器的制造商,它生产的产品包括千分尺,卡尺,千分表,高度尺&…

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

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

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

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

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

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

Java 数组基础

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

linux nc命令

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

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

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

Xss Csrf 简介

一、Js在web的执行环境 1.直接触发 •在HTML页中插入<script></script>脚本标记。JS嵌入到HTML中的两种方式&#xff1a; •1&#xff09;直接嵌入<script>标签 <script language“javascript”> document.write(“hello world!”); </script> •…

linux系统如何调屏幕亮度,Linux入门教程:Ubuntu笔记本屏幕亮度调节

前天入手一台Dell笔记本&#xff0c;i7第五代处理器&#xff0c;8G内存&#xff0c;1T硬盘&#xff0c;很符合我对移动工作站的要求。今天果断将正版win8替换为Ubuntu&#xff0c;DIY的后果就是原来3秒启动系统变成了现在15秒&#xff0c;忍了。但是另一个问题十分困扰我&#…

linux 如何查看终端格式,你应该还不知道,Linux终端下的 Markdown 文档查看器

原标题&#xff1a;你应该还不知道&#xff0c;Linux终端下的 Markdown 文档查看器现在&#xff0c;Markdown 差不多已经成为技术文档的标准。它可以实现技术文档的快捷写作&#xff0c;以及输出发布。同样都是标记语言&#xff0c;但Markdown 文档相比HTML更加简单。一是体现在…

Android之 Fragment

什么是Fragment&#xff1a; Android是在Android 3.0 (API level 11)开始引入Fragment的。 可以把Fragment想成Activity中的模块&#xff0c;这个模块有自己的布局&#xff0c;有自己的生命周期&#xff0c;单独处理自己的输入&#xff0c;在Activity运行的时候可以加载或者移除…

安卓psp模拟器联机教程_刺激战场国际服下载方法教程!安卓ios模拟器都有

刺激战场国际服不需要VPN&#xff0c;不需要加速器。刺激战场国际服账号可以使用微信登入&#xff0c;进游戏页面点击more就可以了。安卓系统&#xff1a;①下载网易UU加速器&#xff0c;通过网易UU加速器平台直接下载。②有的机型不能通过网易UU下载&#xff0c;但是可以通过Q…

docker pdf 中文版 linux,Docker入门实战手册PDF

一、为什么要使用 Docker&#xff1f;1 、快速交付应用程序• 开发者使用一个标准的image 来构建开发容器&#xff0c;开发完成之后&#xff0c;系统管理员就可以使用这个容器来部署代码• Docker 可以快速创建容器&#xff0c;快速迭代应用程序&#xff0c;并让整个过程可见…

openldap linux客户端,OpenLDAP 客户端安装部署

六、OpenLDAP客户端验证1、配置/etc/openldap/ldap.conf默认客户端不允许查询OpenLDAP条目信息&#xff0c;如果需要让客户端查询条目&#xff0c;需要添加OpenLDAP服务端的URI以及BASE条目&#xff0c;命令如下&#xff1a;2、客户端验证用户的信息添加我已经在上篇博文里面介…

基于.Net Framework 4.0 Web API开发(4):ASP.NET Web APIs 基于令牌TOKEN验证的实现

概述&#xff1a; ASP.NET Web API 的好用使用过的都知道&#xff0c;没有复杂的配置文件&#xff0c;一个简单的ApiController加上需要的Action就能工作。但是在使用API的时候总会遇到跨域请求的问题&#xff0c; 特别各种APP万花齐放的今天&#xff0c;对API使用者身份角色验…

匈牙利命名法为何被淘汰_为何甲烷的习惯命名法用甲烷而不是一烷?

其实在有机化合物中文翻译早期&#xff0c;是有过用数字命名的阶段的&#xff0c;先上图。部分有机化合物在不同时期的汉译名对照那么后来为何未采用数字&#xff0c;而使用天干。与商务印书馆和郑贞文个人其实有很大关系。那么有机物中文命名的演进是怎样的呢&#xff1f;下面…