lookbusy 一款用于 Linux 系统的虚拟负载生成器
简介
lookbusy,可以虚拟产生系统 CPU、内存、磁盘等负载,给人造成一种系统繁忙的错觉,在一些需要系统负载达标的场景中非常有用
安装
仓库:https://github.com/flow2000/lookbusy
通过 git 下载:
shell
1 | git clone https://github.com/flow2000/lookbusy |
或者下载压缩包:
shell
1 | wget https://github.com/flow2000/lookbusy/archive/refs/heads/master.zip |
或者通过代理下载:
shell
1 | wget https://ghproxy.com/https://github.com/flow2000/lookbusy/archive/refs/heads/master.zip |
最后编译安装:
shell
1 | cd lookbusy |
CPU 使用选项
- -c、 每个 cpu 的期望利用率,以百分比为单位(默认 50 )。若选择
curve
CPU 使用模式,则应给出 MIN-MAX 形式的范围。 - -n、保持忙碌的 CPU 数量(默认值:自动检测出的全部核心数)
- -r、 第一种模式:
fixed
,试图保持指定百分比的 CPU 利用率,第二种模式:curve
,产生的利用率水平随给定间隔内上下浮动。 - -p、 曲线内峰值利用率的偏移量,默认单位是秒,可以添加 m、h、d 作为其他单位
- -P、 曲线内峰值利用率的偏移量,可以添加 m、h、d 作为其他单位
例子:
plaintext
1 | lookbusy -c 50 # 占用所有 CPU 核心各 50% |
内存使用选项
- -m、 以字节为单位,后面是 KB、MB 或 GB(其他单位)
- -M、 单位为毫秒(默认值为 1000)
例子:
plaintext
1 | lookbusy -m 128MB -M 1000 # 每 1000 毫秒,循环释放并分配 128MB 内存 |
磁盘使用选项
- -d、用于磁盘流失的文件大小(以字节为单位,后跟 KB、MB、GB 或 TB(其他单位))
- -b、用于 I/O 的块大小(以字节为单位,后跟 KB、MB 或 GB)
- -D、迭代之间的休眠时间,以毫秒为单位(默认值为 100)
- -f、 要用作缓冲区的文件 / 目录的路径(默认 /tmp)
例子:
plaintext
1 | lookbusy -d 1GB -b 1MB -D 10 # 每 10 毫秒,循环进行 1MB 磁盘写入,临时文件不超过 1GB |
后台运行
如果你需要在后台运行 lookbusy,你可以使用 nohup
:
plaintext
1 | nohup lookbusy -c 50 > /dev/null 2>&1 & #占用所有 CPU 核心各 50%,且后台运行,不记录日志 |
关闭 lookbusy
:
plaintext
1 | ps -ef | grep lookbusy | grep -v grep |
杀死进程:
plaintext
1 | kill -9 <pid> |
图例:
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 枫叶!