- stress压测
#先安装一些基础工具
yum install wget gcc gcc-c++ make -y
wget http://people.seas.harvard.edu/~apw/stress/stress-1.0.4.tar.gz
tar zxf stress-1.0.4.tar.gz
cd stress-1.0.4
./configure
make
make install
在容器使用stress指令进行负载压测
-v 显示版本号
-q 不显示运行信息
-n 显示已完成的指令情况
-t --timeout N 指定运行N秒后停止
–backoff N 等待N微妙后开始运行
-c 产生n个进程 每个进程都反复不停的计算随机数的平方根
-i 产生n个进程 每个进程反复调用sync(),sync()用于将内存上的内容写到硬盘上
-m --vm n 产生n个进程,每个进程不断调用内存分配malloc和内存释放free函数
–vm-bytes B 指定malloc时内存的字节数 (默认256MB)
–vm-hang N 指定在free钱的秒数
-d --hadd n 产生n个执行write和unlink函数的进程
-hadd-bytes B 指定写的字节数
–hadd-noclean 不unlink
#测试场景
stress -c 1 -t 100
100毫秒后结束
stress --cpu 2
或者stress -c 2
#测试内存
stress 测试内存的时候,–vm-bytes 1G --vm-hang 100 这里2个参数是关键!!!!
–vm-bytes 表示malloc分配多少内存
–vm-hang 表示malloc分配的内存多少时间后在free()释放掉
–vm 指定进程数量
#10个进程,同时去malloc分配内存,并且保持10s后再释放内存
stress --vm 10 --vm-bytes 100m --vm-hang 100 --timeout 10s
stress --vm 1 --vm-bytes 1024m --vm-hang 0
使用docker指令查看容器运行状态,可以os1容器的内存和cpu都得到了限制,即使给压测时超出了最大内存,也不会额外占用资源
docker stats
亲测小白系列之-stress docker cpu 内存 压测
最新推荐文章于 2025-06-13 23:02:30 发布