Pentadbir sistem selalunya perlu meneroka kesan ke atas prestasi aplikasi di bawah beban yang berbeza. Ini bermakna beban mesti dibuat secara buatan berulang kali. Sudah tentu, anda boleh melakukan ini dengan alat khusus, tetapi kadangkala anda mungkin tidak mahu atau boleh memasang alat baharu.
Setiap pengedaran Linux disertakan dengan alatan untuk membuat beban kerja. Ia tidak sefleksibel seperti alat khusus, tetapi ia mudah didapati dan tidak memerlukan pembelajaran khusus.
Arahan berikut mencipta beban CPU dengan memampatkan data rawak dan menghantar hasilnya ke /dev/null:
cat /dev/urandom | gzip -9 > /dev/null
Jika anda mahukan beban yang lebih besar, atau sistem mempunyai berbilang teras, maka hanya mampatkan dan nyahmampat data, seperti ini:
cat /dev/urandom | gzip -9 | gzip -d | gzip -9 | gzip -d > /dev/null
Tekan CTRL+C untuk mematikan proses.
Arahan berikut akan mengurangkan jumlah memori yang tersedia. Ia melakukan ini dengan mencipta sistem fail dalam ingatan dan menulis fail ke dalamnya. Anda boleh menggunakan seberapa banyak memori yang anda mahu, cuma tulis lebih banyak fail ke dalamnya.
Mula-mula, buat titik pelekap dan lekapkan sistem fail ramfs padanya:
mkdir z mount -t ramfs ramfs z/
Langkah kedua, gunakan dd untuk mencipta fail dalam direktori ini. Di sini kami mencipta fail 128M:
dd if=/dev/zero of=z/file bs=1M count=128
Saiz fail boleh diubah suai melalui operator berikut:
创建磁盘 I/O 的方法是先创建一个文件,然后使用 for 循环来不停地拷贝它。
下面使用命令 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
Atas ialah kandungan terperinci Simulasikan beban sistem pada Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!