news 2026/6/21 20:54:59

经验: Linux系统压力测试工具(命令行工具)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
经验: Linux系统压力测试工具(命令行工具)

Linux的命令行压力测试工具在做基准测试时很有用,通过基准测试对了解一个系统所能达到的最大性能指标,这些指标可以作为后续性能比较、优化评估的参考依据。

模拟CPU压力:

可以使用stress命令使CPU处于高负载状态。例如,通过stress -c 4命令(-c选项用于指定CPU核心数),会让系统的4个CPU核心都处于高负载运算状态。这对于测试CPU的性能极限以及系统在CPU高负载下的响应能力很有帮助。比如,在测试服务器性能时,通过这种方式可以确定服务器在高CPU负载下是否会出现卡顿或者崩溃的情况。

模拟CPU打满:

stress -c 1 -t 100

#-v 显示版本号 -v, --verbose be verbose #-q 不显示运行信息 -q, --quiet be quiet #-n 显示已完成的指令情况 -n, --dry-run show what would have been done #-t --timeout N 指定运行N秒后停止 #--backoff N 等待N微妙后开始运行 -t, --timeout N timeout after N seconds --backoff N wait factor of N microseconds before work starts #-c 产生n个进程 每个进程都反复不停的计算随机数的 平方根 -c, --cpu N spawn N workers spinning on sqrt() #-i 产生n个进程 每个进程反复调用sync(),sync()用于 将内存上的内容写到硬盘上

模拟io瓶颈:

fio是一个灵活且功能强大的 Linux I/O(输入 / 输出)性能测试工具。它可以对磁盘、固态硬盘(SSD)、网络存储等各种存储设备进行多种类型的 I/O 操作测试,包括但不限于顺序读写、随机读写、混合读写等,并且能够模拟不同的 I/O 负载场景。

随机读 #fio -name=randread -direct=1 -iodepth=64 -rw=randread -ioengine=libaio -bs=4k -size=1G -numjobs=1 - runtime=1000 -group_reporting -filename=/dev/sdb 随机写 #fio -name=randwrite -direct=1 -iodepth=64 -rw=randwrite -ioengine=libaio -bs=4k -size=1G -numjobs=1 - runtime=1000 -group_reporting -filename=/dev/sdb 顺序读 #fio -name=read -direct=1 -iodepth=64 -rw=read -ioengine=libaio -bs=4k -size=1G -numjobs=1 - runtime=1000 -group_reporting -filename=/dev/sdb 顺序写 # fio -name=write -direct=1 -iodepth=64 -rw=write -ioengine=libaio -bs=4k -size=1G

创建初始化fileio文件: # sysbench --test=fileio --file-num=16 --file-totalsize=2G prepare 接下来开始对这些文件进行测试,使用16个线程随机读 进行测试结果如下: # sysbench --test=fileio --file-total-size=2G --file-testmode=rndrd --max-time=180 --maxrequests=100000000 --num-threads=16 --init-rng=on -- file-num=16 --file-extra-flags=direct --file-fsync-freq=0 - -file-block-size=16384 run 测试结束后,记得执行cleanup,以确保测试所产生的文件都已删除: #sysbench --test=fileio --file-num=16 --file-totalsize=2G cleanup

模拟大流量:

iperf3是一个用于网络吞吐量测量的工具,可以测试 TCP、UDP 或 SCTP 的吞吐量。

客户端 向目的地址10.20.81.33、5002号TCP端口,发一条 TCP流,打印间隔为2s,发包时间为1000s #iperf3 -c 10.20.81.33 -p 5002 -i 2 -t 1000 服务端 #iperf3 -s -p 5002 -i 2

模拟端口禁用:

查看禁用列表 #iptables -L -n --line-number 禁用出口端口 #iptables -A OUTPUT -p tcp --sport 18004 -j DROP 禁用入口端口 #iptables -A INPUT -p tcp --dport 18004 -j DROP 删除入口端口编号 #iptables -D INPUT 1 删除出口端口编号 #iptables -D OUTPUT 1

Stress工具还提供了对内存,磁盘I/O做压力测试的命令。

Stress-ng是stress的增强版。

Sysbench主要用于数据库服务器(如MySQL)的性能测试,但也可以用于测试系统的CPU、内存和磁盘I/O性能。

感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/13 20:59:22

YOLOv12官版镜像使用避坑指南,这些错误千万别犯

YOLOv12官版镜像使用避坑指南,这些错误千万别犯 YOLOv12不是简单的版本迭代,而是一次目标检测范式的跃迁——它用注意力机制彻底重构了实时检测的底层逻辑。但再惊艳的模型,一旦在部署环节踩进几个常见陷阱,轻则报错中断、显存爆…

作者头像 李华
网站建设 2026/6/10 15:09:35

零基础入门大模型:Qwen3-0.6B一键部署实战教程

零基础入门大模型:Qwen3-0.6B一键部署实战教程 你是不是也想过——不用配环境、不装显卡驱动、不编译源码,点几下就能和最新一代千问大模型对话? 不是在云端等排队,也不是靠GPU服务器租用,而是在自己手边这台普通电脑…

作者头像 李华
网站建设 2026/6/18 0:37:42

阿里开源数字人Live Avatar:一文搞懂使用场景与配置

阿里开源数字人Live Avatar:一文搞懂使用场景与配置 Live Avatar不是又一个“概念演示”式的数字人项目——它是阿里联合高校推出的、真正面向工程落地的端到端视频生成数字人模型。它不依赖云端API,不强制要求多卡集群,也不止步于静态头像或…

作者头像 李华
网站建设 2026/6/19 19:12:45

新手教程:用Arduino Uno和IDE打造迷你气象站

以下是对您提供的博文内容进行 深度润色与结构重构后的专业级技术教程文稿 。全文已彻底去除AI生成痕迹,强化了真实工程师视角的实践洞察、教学逻辑与工程思辨,语言更自然流畅、节奏张弛有度,兼具技术深度与新手友好性。所有模块均有机融合…

作者头像 李华
网站建设 2026/6/12 23:21:32

轻松上手!Unsloth配合Hugging Face生态体验

轻松上手!Unsloth配合Hugging Face生态体验 你是不是也遇到过这样的困扰:想微调一个大语言模型,但刚打开训练脚本就卡在环境配置上?显存爆了、安装报错、依赖冲突、训练慢得像在等咖啡凉透……更别说还要手动搭LoRA、写奖励函数、…

作者头像 李华
网站建设 2026/6/19 21:11:00

PyTorch-2.x-Universal-Dev使用总结:值得推荐的工具

PyTorch-2.x-Universal-Dev使用总结:值得推荐的工具 1. 为什么需要一个“开箱即用”的PyTorch开发环境? 你有没有过这样的经历:刚想跑一个深度学习小实验,结果卡在环境配置上两小时? pip install torch 下载失败&am…

作者头像 李华