22、stress 系统负载压测

2021-07-19  本文已影响0人  一个反派人物

1 作用

主要用来进行系统的负载(cpu、内存、io)压力测试

2 安装

yum -y install stress

3 语法

stress [OPTION [ARG]] ...

 -v, --verbose      显示详细信息
 -q, --quiet        程序在运行的过程中不输出信息
 -n, --dry-run      输出程序会做什么而并不实际执行相关的操作
 -t, --timeout N    在 N 秒后结束程序 
     --backoff N    等待N微妙后开始运行
 -c, --cpu N        产生 N 个进程,每个进程都反复调用sqrt() 不停的计算随机数的平方根
 -i, --io N         产生 N 个进程,每个进程反复调用sync() 将内存上的内容写到硬盘上
 -m, --vm N         产生 N 个进程,每个进程不断分配和释放内存 malloc()/free()
     --vm-bytes B   指定每个进程分配内存的大小(default is 256MB)
     --vm-stride B  touch a byte every B bytes (default is 4096)
     --vm-hang N    指示每个消耗内存的进程在分配到内存后转入睡眠状态 N 秒,然后释放内存,一直重复执行这个过程
     --vm-keep      一直占用内存,区别于不断的释放和重新分配(默认是不断释放并重新分配内存)
 -d, --hdd N        产生 N 个不断执行 write 和 unlink 函数的进程(创建文件,写入内容,删除文件)
     --hdd-bytes B  指定每个文件大小(default is 1GB)

4 例子

4.1 cpu

消耗2c的cpu资源

stress -c 2

4.2 内存

产生两个子进程,每个进程分配 300M 内存,一直占用

stress --vm 2 --vm-bytes 300M --vm-keep

产生两个子进程,每个进程分配 300M 内存,每隔5秒占用一次

stress --vm 2 --vm-bytes 300M --vm-hang 5

4.3 IO

命令产生 4 个进程,每个进程都反复调用 sync 函数将内存上的内容写到硬盘上

stress -i 4

创建1个进程不断的在磁盘上创建 1000M 大小的文件并写入内容

stress -d 1 --hdd-bytes 10M
上一篇下一篇

猜你喜欢

热点阅读