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.pswp.cn/news/260131.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/260131.shtml
英文地址,請注明出處:http://en.pswp.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…