news 2026/8/6 5:17:50

stress命令详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
stress命令详解

stress是一个简单的命令行工具,用于对 Linux 系统进行压力测试(stress testing),即主动让系统资源(如 CPU、内存、I/O、磁盘等)处于高负载状态,以测试系统的稳定性、可靠性或者用于复现某些在高负载下才出现的问题。

常被系统管理员、开发人员、测试工程师用于:

  • 测试服务器的稳定性;
  • 模拟高负载环境;
  • 复现系统在高压力下的异常行为;
  • 性能调优前的基准测试;
  • 测试监控告警系统的有效性;

命令行

Usage: stress[OPTION[ARG]]... -?,--helpshow thishelpstatement--versionshow version statement -v,--verbosebe verbose -q,--quietbe quiet -n, --dry-run show what would have beendone-t,--timeoutNtimeoutafter N seconds--backoffNwaitfactor of N microseconds before work starts -c,--cpuN spawn N workers spinning on sqrt()-i,--ioN spawn N workers spinning on sync()-m,--vmN spawn N workers spinning on malloc()/free()--vm-bytes B malloc B bytes per vm worker(default is 256MB)--vm-stride Btoucha byte every B bytes(default is4096)--vm-hang NsleepN secs beforefree(default none,0is inf)--vm-keep redirty memory instead of freeing and reallocating -d,--hddN spawn N workers spinning on write()/unlink()--hdd-bytes BwriteB bytes per hdd worker(default is 1GB)Example: stress--cpu8--io4--vm2--vm-bytes 128M--timeout10s

选项解释

选项说明
-?,--help显示帮助信息(即当前你正在看的这类说明)
--version显示stress工具的版本信息
-v,--verbose详细模式:运行时输出更多信息,便于观察压力测试过程
-q,--quiet静默模式:不输出任何信息,适合在脚本中安静地运行压力测试
-n,--dry-run试运行模式:仅显示将会执行的操作,但不会真正执行压力测试,用于检查命令配置
-t,--timeout N设置压力测试的超时时间,单位为秒;测试将在 N 秒后自动停止
--backoff N在开始施加压力前,先等待N 微秒(百万分之一秒),作为启动前的延迟因子;控制任务启动节奏
-c,--cpu N启动N 个 CPU 压力进程,每个进程反复计算平方根(sqrt()),用于让 CPU 达到高负载
-i,--io N启动N 个 I/O 压力进程,每个进程反复调用sync()系统调用,模拟磁盘 I/O 压力
-m,--vm N启动N 个内存压力进程,每个进程通过反复调用malloc()free()来分配和释放内存,测试内存管理性能与压力
--vm-bytes B每个--vm内存进程分配的内存大小,比如256M1G;默认是256MB
--vm-stride B每隔多少字节触摸一次内存(即模拟访问),默认是 4096 字节(4KB);用于控制内存访问模式
--vm-hang N每个--vm进程在调用free()之前先休眠 N 秒;默认不等待(即立刻释放);设为0表示无限等待;可用于模拟长时间占用内存
--vm-keep保持内存脏状态:不释放并重新分配内存,而是反复对已分配的内存进行“弄脏”操作(写入),用于持续内存压力测试,而不是频繁申请释放
-d,--hdd N启动N 个硬盘(文件写)压力进程,每个进程通过反复调用write()写文件,然后unlink()删除,模拟磁盘写压力
--hdd-bytes B每个--hdd进程每次写入的文件大小,比如512M1G;默认是1GB

示例

示例 1:仅对 CPU 进行压力测试(启动 4 个 CPU 压力进程)

stress --cpu 4
  • 启动 4 个进程,每个都做大量计算,让 CPU 占用飙升;
  • Ctrl+C停止;

示例 2:CPU + 内存 压力测试(CPU 2个 + 内存1个,分配512MB)

stress --cpu 2 --vm 1 --vm-bytes 512M
  • 2 个进程压 CPU;
  • 1 个进程分配并写入 512MB 内存,模拟内存压力;

示例 3:带超时限制的测试(比如运行 60 秒后自动停止)

stress --cpu 2 --vm 1 --vm-bytes 256M --timeout 60
  • CPU 压力 2 核;
  • 内存压力 1 个进程,分配 256MB;
  • 整体运行60 秒后自动退出

示例 4:模拟磁盘 I/O 压力(使用 --io)

stress --io 2
  • 启动 2 个进程频繁调用sync(),给磁盘 I/O 带来压力;

示例 5:模拟磁盘写压力(–hdd)

stress --hdd 1
  • 启动 1 个进程不断写入临时文件,模拟磁盘写入负载;

文件通常写在/tmp下,测试完毕可能会留下临时文件,可手动清理。


示例 6:组合压力测试(CPU + 内存 + I/O,带超时)

stress --cpu 4 --vm 2 --vm-bytes 1G --io 1 --timeout 120
  • 4 个 CPU 压力进程;
  • 2 个内存压力进程,每个分配 1GB;
  • 1 个 I/O 压力进程;
  • 总共运行120 秒后自动停止
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/6 5:16:27

Blender到UE5模型导入:坐标系与单位转换全解析

1. 项目概述:从“躺倒”的模型说起如果你也曾在Blender里精心雕琢了一个模型,信心满满地导出FBX,然后导入到虚幻引擎5(UE5)里,结果发现它要么“躺”在地上,要么缩成了蚂蚁大小,甚至方…

作者头像 李华
网站建设 2026/8/6 5:16:08

深度解析Sabaki围棋软件:现代化棋谱编辑与AI分析平台

深度解析Sabaki围棋软件:现代化棋谱编辑与AI分析平台 【免费下载链接】Sabaki An elegant Go board and SGF editor for a more civilized age. 项目地址: https://gitcode.com/gh_mirrors/sa/Sabaki Sabaki是一款专为围棋爱好者设计的现代化棋谱编辑器和棋盘…

作者头像 李华
网站建设 2026/8/6 5:14:25

VMware虚拟机安装Windows 11完整指南:从环境配置到系统优化

1. 先搞清楚用虚拟机装Win11到底要解决什么问题如果你手头只有一台电脑,但又想同时运行多个操作系统,或者想在一个隔离的环境里测试软件、学习系统配置,那么用虚拟机安装Windows 11就是最直接的办法。它解决的其实就是“一机多用”和“安全隔…

作者头像 李华
网站建设 2026/8/6 5:13:32

Windows系统Python 3.12专业级开发环境搭建与配置全指南

1. 从“能用”到“好用”:为什么你的Python环境总出问题?每次看到“Python环境安装教程”,很多朋友可能觉得这已经是老生常谈了。不就是下载、安装、配个环境变量吗?但作为一个在Windows上被Python环境折磨过无数次的老码农&#…

作者头像 李华
网站建设 2026/8/6 5:11:41

自然辩证法考点预测:命题逻辑与2023备考焦点深度解析

1. 项目概述:为什么我们需要预测“自然辩证法”考点?作为一名长期在人文社科领域摸爬滚打的“老考生”和内容创作者,我深知《自然辩证法》这门课对于很多理工科、哲学社科专业同学来说,是个“熟悉的陌生人”。说熟悉,是…

作者头像 李华
网站建设 2026/8/6 5:11:36

AI手机进化论:从功能点到工作流,豆包AI如何重塑移动智能体验

最近一段时间,我身边不少朋友和同事都在讨论一个现象:手机厂商们好像不约而同地,把“AI”这个词从发布会PPT的角落里,搬到了舞台正中央。从系统级的AI助手,到拍照、修图、通话降噪,再到文档处理&#xff0c…

作者头像 李华