linux测试工具stress用法

 admin   2025-12-24 12:18   5 人阅读  0 条评论

centos系统安装,需要提前配置epel源

yum -y install stress

常用选项

选项 说明
-c, --cpu N 启动 N 个 CPU 进程,每个进程通过计算随机数的平方根(sqrt())模拟高负载。
-i, --io N 启动 N 个 I/O 进程,每个进程通过调用 sync() 将内存缓冲区内容写入磁盘,模拟磁盘 I/O 压力。
-m, --vm N 启动 N 个内存进程,每个进程通过分配和释放内存(malloc()/free())模拟内存压力。
--vm-bytes B 指定每个内存进程分配的内存大小(如 1G500M)。
--vm-keep 保持内存占用(不释放并重新分配),模拟持续内存消耗。
--vm-hang N 分配内存后睡眠 N 秒再释放,重复执行。
--hdd N 启动 N 个磁盘进程,每个进程通过写入和删除文件模拟磁盘压力。
--hdd-bytes B 指定每个磁盘进程写入的文件大小(如 10G)。
--timeout N 测试运行时长(秒),超时后自动停止。
-v, --verbose 显示详细运行信息。
-q, --quiet 静默模式(不输出日志)。

例子

1. CPU 压力测试

    模拟 4 个 CPU 核心满载,持续 60 秒:

    stress --cpu 4 --timeout 60s

    效果:通过 top 或 mpstat -P ALL 1 观察 CPU 使用率接近 100%。

2. 内存压力测试

    分配 2 个进程,每个占用 1GB 内存并保持占用:

    stress --vm 2 --vm-bytes 1G --vm-keep

    效果:通过 free -h 或 vmstat 1 观察内存占用情况。

3. 磁盘 I/O 压力测试

    启动 2 个磁盘进程,每个写入 10GB 数据:

    stress --hdd 2 --hdd-bytes 10G

    效果:通过 iostat -x 1 观察磁盘读写速率和 I/O 等待时间(%util)。

4. 混合负载测试

    同时测试 CPU、内存和磁盘 I/O:

stress --cpu 2 --vm 1 --vm-bytes 500M --hdd 1 --hdd-bytes 5G --timeout 120s

效果:综合评估系统在高负载下的整体表现。

本文地址:https://liuchunjie.top/?id=822
版权声明:本文为原创文章,版权归 admin 所有,欢迎分享本文,转载请保留出处!

 发表评论


表情

还没有留言,还不快点抢沙发?