模擬系統負載.md

使用Linux系統自帶的工具進行模擬負載

CPU

下面的命令會增長CPU負荷,方法是經過壓縮隨機數據並將結果發送到 /dev/nullshell

cat /dev/urandom | gzip -9 > /dev/null

若是你想要更大的負荷,或者系統有多個核,那麼只須要對數據進行壓縮和解壓就好了,像這樣:dom

cat /dev/urandom | gzip -9 | gzip -d | gzip -9 | gzip -d > /dev/null

按下 CTRL+C來終止進程。ide

內存

下面命令會減小可用內存的總量。它是經過在內存中建立文件系統而後往裏面寫文件來實現的。你能夠使用任意多的內存,只須要往裏面寫入更多的文件就好了。工具

首先,建立一個掛載點,而後將 ramfs 文件系統掛載上去:code

mkdir z

mount -t ramfs ramfs z/

第二步,使用 dd 在該目錄下建立文件。這裏咱們建立了一個 128M 的文件:進程

dd if=/dev/zero of=z/file bs=1M count=128

文件的大小能夠經過下面這些操做符來修改:ip

bs= 塊大小。能夠是任何數字後面接上B(表示字節),K(表示 KB),M( 表示 MB)或者 G(表示 GB)。內存

count= 要寫多少個塊。it

磁盤IO

建立磁盤 I/O 的方法是先建立一個文件,而後使用 for 循環來不停地拷貝它。class

下面使用命令 dd建立了一個全是零的 1G 大小的文件:

dd if=/dev/zero of=loadfile bs=1M count=1024

下面命令用 for 循環執行 10 次操做。每次都會拷貝 loadfile 來覆蓋 loadfile1

for i in {1..10}; do cp loadfile loadfile1; done

經過修改 {1..10} 中的第二個參數來調整運行時間的長短。(LCTT 譯註:你的 Linux 系統中的默認使用的 cp 命令極可能是 cp -i 的別名,這種狀況下覆寫會提示你輸入 y 來確認,你能夠使用 -f 參數的 cp 命令來覆蓋此行爲,或者直接用/bin/cp 命令。)

若你想要一直運行,直到按下 CTRL+C來中止,則運行下面命令:

while true; do cp loadfile loadfile1; done
相關文章
相關標籤/搜索