linux stress 压测命令的使用
一、stress工具安装:
1、获取stress源码安装包(stress-1.0.4.tar.gz)
3、解压并安装
[root@localhost /]#cd /tmp/
[root@localhost tmp]#tar –zxvf stress-1.0.4.tar.gz
4、进入stress-1.0.4文件夹下,编译并安装stress
[root@localhost tmp]#cd /tmp/stress-1.0.4/
[root@localhost stress-1.0.4]#./configure
[root@localhost stress-1.0.4]# make
[root@localhost stress-1.0.4]#make install
默认安装在:/usr/local/bin/stress
二、stress工具使用:
命令:taskset –c 逻辑CPU索引号 stress --timeout 持续时间 --cpu 1
参数说明:
-c 服务器逻辑CPU的索引号
--timeout 对CPU施加压力的持续时间
--cpu stress进程数,若值为2,每个stress进程所有消耗的逻辑CPU资源平分
如:对索引为0的逻辑cpu施加压力, 持续30秒
taskset -c 0 stress --timeout 30 --cpu 1
通过top 1可以查看到索引为0的CPU的利用率
按作业指导书安装完系统以后,假设“/var”分区是系统中最大的分区,按以下方式之
一运行stress(建议使用第三种方式):
Step9 #cd /var
Step10 #mkdir test //建立测试目录“test”//
Step11 #cd test
Step12-1 #stress -d 1 --hdd-noclean --hdd-bytes 800k // 方式一: 主要
测试硬盘,通过mkstemp()生成800K大小的文件,写入硬盘,对CPU,
内存的使用要求很低 //
Step12-2 #stress -c 4 -i 4 -d 1 --hdd-noclean --hdd-bytes 800k
// 方式二:增大“c”,“i”值会提高CPU的使用率;增大“d”值会
减少CPU的使用率,而增加对硬盘的数据写入量,但是对内存都要
求不高 //
Step12-3 #stress -c 1 -i 1 --vm 6 --vm-bytes 128M -d 2 --hdd-noclean
--hdd-bytes 800k //方式三:增大“vm”,“--vm-bytes”
的值或采用选项“—vm-hang”都会提高内存的使用率//
运行过程中,您可以通过按“Alt+Ctrl+F*”进入其他终端,执行“df”命令,查看磁
盘是否已满(/var是否已满),如果磁盘已满,则程序“stress”会报错并终止;
执行以下操作,清空测试目录,如果需要;进入到测试目录下,继续运行“stress”进
行测试:
Step13 #cd
Step14 #chmod -R 755 /var/test
Step15 #rm -R -f /var/test/
Step16 #cd /var/test/
Step17 #stress -c 1 -i 1 --vm 6 --vm-bytes 128M -d 2 --hdd-noclean
--hdd-bytes 800k //重新运行//
出货时,只需要删除相关的测试目录即可,Stress可以保留在系统中,也可以使用以
下方式删除:
Step18:#rm -R -f /usr/local/src/stress-0.18.1/
Step19:#rm -f /usr/local/bin/stress
Step20: #rm -f /usr/local/src/stress-0[1].18.1.tar.gz
完毕
附:Stress使用说明
Stress 选项说明:
-?
--help 显示帮助信息
--version 显示软件版本信息
-v
--verbose 显示详细运行信息
-q
--quiet 不显示运行信息
-n
--dry-run 显示已经完成的指令执行情况
-t secs
--timeout secs 指定运行多少秒
--backoff usecs 等待usecs微秒后才开始执行
-c forks
--cpu forks
产生多个处理sqrt()函数的CPU进程
-i forks
--io forks
产生多个处理sync()函数的磁盘I/O进程
-m forks
--vm forks
产生多个处理malloc()内存分配函数的进程
--vm-bytes bytes
指定内存的Bytes数,默认值是1(与--vm-hang配合使用)
--vm-hang
指示每个消耗内存的进程在分配到内存后转入休眠状态,与正常的无限分配和释放内存的处理相反,这有利于模拟只有少量内存的机器;例如,下面命令运行时就会
分配到并一直持有256M内存,直到进程被终止;
% stress --vm 2 --vm-bytes 128M --vm-hang
-d forks
--hdd forks
产生多个执行write()函数的进程
--hdd-bytes bytes
指定写的Bytes数,默认是1GB
--hdd-noclean
不要将写入随机ASCII数据的文件Unlink
注意:时间单位可以为秒s,分m,小时h,天d,年y,文件大小单位可以为K,M,G
示例:
一个简单的例子就是你只想给系统一个随机负载,此命令产生13个进程,每个进程都反复不停的计算由rand()产生随机数的平方根
% stress -c 13
Stress支持很多选项,可以指定仅显示有限的运行信息,以下命令产生1024个进程,仅显示出错信息
% stress --quiet --cpu 1k
为了观察系统何时达到I/O极限,可以使用选项“-i”,以下指令产生4个进程,每个进程反复调用sync(),sync()用于将内存上的内容写到硬盘上
% stress -i 4
可以在一条指令中使用多个消耗资源的选项,如下指令表示显示运行信息,一分钟后终止运行(13个CPU进程,4个I/O进程)
% stress -c 13 -i 4 --verbose --timeout 1m
你也可以指定向磁盘中写入固定大小的文件,这个文件通过调用mkstemp()产生并保存在当前目录下,默认是文件产生后就被执行unlink(清除)操作,但是你可以使用“--hdd-bytes”选项将产生的文件全部保存在当前目录下,这会将你的磁盘空间逐步耗尽
% stress -d 1 --hdd-noclean --hdd-bytes 13
可以支持生成大文件
% stress -d 1 --hdd-noclean --hdd-bytes 3G
linux stress 压测命令的使用的更多相关文章
- Kali Linux解压包命令:
Kali Linux解压包命令: tar.gz格式压缩包: root@kali:~# tar -xzvf 压缩包.tar.gz -C /root/home/Desktop root@kali:~# c ...
- Linux服务器压测/拷机软件收集
最近公司采购了一批服务器,于是收集了一些拷机软件来压测服务器硬件性能.硬件的稳定相对来说比较重要,7x24小时无间断运行,主要看三个硬件:CPU.内存.硬盘. 下面是收集的一些教程,可能网址已经失效了 ...
- Linux 解压压缩命令
一.概述: 1.压缩命令: 命令格式:tar -zcvf 压缩文件名.tar.gz 被压缩文件名 可先切换到当前目录下.压缩文件名和被压缩文件名都可加入路径. 2.解压缩命令: 命令格式:t ...
- 压力测试(六)-阿里云Linux服务器压测接口实战
1.SpringBoot 接口打包,并用jar包方式部署 简介:用jar包方式在控制台进行启动 打包 mvn package && java -jar target/gs-spring ...
- Android Monkey压测命令
测试步骤:1.安装ADB2.连接被测手机和电脑3.打开CMD命令行4.输入monkey命令adb shell monkey -p your.package.name --pct-touch 30 -- ...
- Linux解压 tar命令
tar [-cxtzjvfpPN] 文件与目录 ....参数:-c :建立一个压缩文件的参数指令(create 的意思):-x :解开一个压缩文件的参数指令!-t :查看 tarfile 里面的文件! ...
- Linux解压/压缩命令——tar、gz、tar.gz、tgz、bz2、tar.bz2、Z、zip、rar、lha
.tar 解包:tar -xvf FileName.tar 打包:tar -cvf FileName.tar DirName ——————————————— .gz 解压1:gunzip FileNa ...
- linux性能压测工具
http://benjr.tw/532 http://blog.yufeng.info/archives/2023 https://www.cnblogs.com/zhoujinyi/archive/ ...
- Redis压测命令
1.redis-benchmark 100个并发连接,100000个请求: redis-benchmark -h 127.0.0.1 -p 6379 -c 100 -n 100000 存取为100个字 ...
随机推荐
- 基于Spring开发的DUBBO服务接口测试
基于Spring开发的DUBBO服务接口测试 知识共享主要内容: 1. Dubbo相关概念和架构,以及dubbo服务程序开发步骤. 2. 基于Spring开发框架的dubbo服务接口测试相关配置. 3 ...
- 【Python】self的用法扫盲
在Python中,我们有两个重要的概念:类与实例 例如:我们在现实生活中人就是一个类,实例就是具体到某一个男人(张三.李四等) 1.类:定义人这个类 class People(object): pas ...
- PHP-手册阅读
配置选项: html_errors: 无意义的 HTML 标记符会使得出错信息很凌乱, 所以在外壳下阅读报错信息是十分困难的, 因此将该选项的默认值改为 FALSE implicit_flush: 在 ...
- lucene 搜索优化,个人实战经验总结
1.IndexSearch.IndexReader等都是线程安全的类,多线程并发使用是没有问题的.不到忘不得以,尽量避免重新实例化,他们实例化是很花费时间的,看一下他们的构造原理你就知道了. 2. ...
- html 5 中的 6位 十六进制颜色码 代表的意思180313
人的眼睛看到的颜色有两种: ⒈ 一种是发光体发出的颜色,比如计算机显示器屏幕显示的颜色: ⒉ 另一种是物体本身不发光,而是反射的光产生 的颜色,比如看报纸和杂志上的颜色. 我们又知道任何颜色都是由 ...
- Centos下安装JDK、Maven和Git
原文地址:https://github.com/eacdy/spring-cloud-book/blob/master/3%20%E4%BD%BF%E7%94%A8Docker%E6%9E%84%E5 ...
- 学习使用master.dbo.spt_values表
如果要生成的临时表中有个连续的数字列,或者连续的日期列,如下所示: 2012-1-1 2012-1-2 2012-1-3 ... ... 可以这样写: declare @begin datetime, ...
- 错误: ISO C++ 不同意在类内初始化很量静态成员
错误: ISO C++ 不同意在类内初始化很量静态成员 今天開始学C++ primer,在牵扯到Sales_item.h头文件时.出现了一些问题(和C++11新特性相关),当前的编译器版本号 ...
- SpringCloud系列十二:手动创建Feign
1. 回顾 上文讲解了自定义Feign.但是在某些场景下,前文自定义Feign的方式满足不了需求,此时可使用Feign Builder API手动创建Feign. 本文围绕以下场景,为大家讲解如何手动 ...
- MySql(零):Linux(CentOS7)下安装和配置MySQL5.7.20(安装包安装)
一.下载安装包 1.在官网下载MySQL5.7安装包 mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz. 下载地址:https://dev.mysql.com/do ...