業務測試過程中,經常需要驗證cpu耗盡、記憶體耗盡、磁碟佔滿等相對極端的情況。
如何有效的製造上述場景是工作的關鍵。
對於cpu利用率100%的場景,可以通過下述命令來實現:
for i in `seq 1 $(
cat/proc/cpuinfo |grep "physical id"
|wc -l)`;
do dd if=/dev/zero of=/dev/null & done
下圖說明了執行該命令前後,cpu的利用情況對比:
測試完成後,只需要將上圖中,對應command為「dd」的程序殺掉即可將系統恢復正常。
對於磁碟占用,我們也可以通過dd命令,很方便的將磁碟佔滿:
(1)「/dev/zero」是linux中的乙個偽檔案,作為輸入裝置,它能夠提供無窮無盡的0(ascii),這是乙個用來初始化檔案的好工具。
(2)testfile是自己定義個乙個檔名,該檔案被定義放在了「/」根目錄下面。
(3)bs=10m指定了塊(block size)的大小,這裡也可以指定單位為k、g等;
(4)count=2000指定了寫入塊的數量,跟塊大小一起配合,可以很容易的將指定的目錄填滿。
實際上,上述命令就是在指定的目錄下面生成乙個固定大小的檔案,並用0初始化該檔案。
測試結束後,將對應目錄下的這個測試檔案刪除,即可使系統恢復正常。
對於記憶體占用,目前沒有找到特別有效的方法,大多數使用死迴圈等消耗記憶體的方法,會直接將系統卡死,起不到測試的效果,不可取。
如果測試環境是虛擬機器的話,可以通過減小虛擬機器記憶體的方式來變相的達到測試目的。測試完成後,將虛擬機器記憶體改回正常值即可。
如各位讀者有更好的方法,還望至不吝指教。
Linux系統資源檢視
1.vmstat命令監控系統資源 vmstat 重新整理延時 重新整理次數 root better vmstat 1 3 procs memory swap io system cpu r b swpd free buff cache si so bi bo in cs us sy id wa st...
linux系統資源監控
如何檢視linux支援哪些命令 連按兩次tab鍵 top 作為乙個廣為人知的linux工具,top是大多數的類 unix 作業系統任務管理器。它可以顯示當前正在執行的程序的列表,使用者可以按照不同的條件對該列表進行排序。它主要顯示了系統程序對cpu和記憶體的使用狀況。top可以快速檢查是哪個或哪幾個...
Linux系統資源檢視
vmstat 重新整理延時 重新整理次數 如 vmstat 1 3,即每隔1秒重新整理一次,共重新整理3次 如dmesg grep cpu找到其中與cpu相關的那部份資訊。free 選項 選項 b 單位為位元組 k 單位為kb,預設 m 單位為mb g 單位為gb 第一行 total是總記憶體數,u...