1、模拟延迟传输# tc qdisc add dev eth0 root netem delay 100ms该命令将 eth0 网卡的传输设置为延迟100毫秒发送。更真实的情况下,延迟值不会这么精确,会有一定的波动,我们可以用下面的情况来模拟出带有波动性的延迟值:# tc qdisc add dev eth0 root netem delay 100ms 10ms该命令将 eth0 网卡的传输设置为延迟 100ms ± 10ms (90 ~ 110 ms 之间的任意值)发送。还可以更进一步加强这种波动的随机性:# tc qdisc add dev eth0 root netem delay 100ms 10ms 30%该命令将 eth0 网卡的传输设置为 100ms ,同时,大约有 30% 的包会延迟 ± 10ms 发送。2、模拟网络丢包# tc qdisc add dev eth0 root netem loss 1%该命令将 eth0 网卡的传输设置为随机丢掉 1% 的数据包。也可以设置丢包的成功率:# tc qdisc add dev eth0 root netem loss 1% 30%该命令将 eth0 网卡的传输设置为随机丢掉 1% 的数据包,成功率为 30% 。3、模拟包重复# tc qdisc add dev eth0 root netem duplicate 1%该命令将 eth0 网卡的传输设置为随机产生 1% 的重复数据包 。4、模拟包损坏# tc qdisc add dev eth0 root netem corrupt 0.2%该命令将 eth0 网卡的传输设置为随机产生 0.2% 的损坏的数据包 。(内核版本需在2.6.16以上)5、模拟包乱序# tc qdisc change dev eth0 root netem delay 10ms reorder 25% 50%该命令将 eth0 网卡的传输设置为:有 25% 的数据包(50%相关)会被立即发送,其他的延迟 10 秒。新版本中,如下命令也会在一定程度上打乱发包的次序:# tc qdisc add dev eth0 root netem delay 100ms 10ms6、模拟恢复# tc qdisc del dev eth1 root7、列出所有现有规则# tc -s qdisc ls dev eth0
1、cpu使用率单核# cat /dev/zero > /dev/null# cat /dev/urandom | gzip -9 > /dev/null# dd if=/dev/zero of=/dev/null# yes > /dev/null
2、cpu多核施压# for i in 'seq 1 $(cat /proc/cpuinfo | grep "physical id" | wc -l)'; do cat /dev/zero > /dev/null & done# cat /dev/urandom | gzip -9 | gzip -d | gzip -9 | gzip -d > /dev/null3、磁盘io# dd if=/dev/zero of=loadfile bs=1M count=1024# while true; do cp loadfile loadfile1; done
stress --cpu 2 # 产生 2 个工作进程对 CPU 施加压力,也就是将会占用两个 CPU 核心stress --vm 1 --vm-bytes 128M --vm-hang 0 # 产生 1 个工作进程,占用 128MB 内存并保持stress --io 1 # 产生 1 个工作进程对 IO 施加压力
lookbusy -c 50 # 占用所有 CPU 核心各 50%lookbusy -c 50 -n 2 # 占用两个 CPU 核心各 50%lookbusy -c 50-80 -r curve # 占用所有 CPU 核心在 50%-80% 左右浮动lookbusy -c 0 -m 128MB -M 1000 # 每 1000 毫秒,循环释放并分配 128MB 内存lookbusy -c 0 -d 1GB -b 1MB -D 10 # 每 10 毫秒,循环进行 1MB 磁盘写入,临时文件不超过 1GB
文章转载自NIFI实战,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




