lLinux 下 Stress 压力测试工具
作者信息
邮箱:sijiayong000@163.com
Q Q:601566386
Stress是什么
stress是一个linux下的压力测试工具,专门为那些想要测试自己的系统,完全高负荷和监督这些设备运行的用户。
安装
方式一
将stress的安装包上传并解压到linux服务器的/usr/local/src路径下,
执行:tar -xf stress_1.0.1.orig.tar.gz
进入解压后的stress-1.0.1文件夹,
输入:./configure
进行配置,若配置失败,并打印
no acceptable c compiler found in path,
则表示无可用的GCC编译环境,输入yum –y install gcc自动下载安装。
配置完成后,依次输入
至此,stress就全部安装完成了,在命令行会打印stress安装成功的提示。
方式二
需要有
epel源
可使用aliyun的epel源
执行:wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
可直接使用:yum install stress -y
使用指南
首先需建立测试目录,供放置写磁盘的文件。
stress各主用参数说明(-表示后接一个中划线,--表示后接2个中划线,均可用于stress后接参数,不同表达方式):
-?
--help 显示帮助信息
--version 显示软件版本信息
-t secs:
--timeout secs指定运行多少秒
--backoff usecs 等待usecs微秒后才开始运行
-c forks:
--cpu forks 产生多个处理sqrt()函数的CPU进程
-m forks
--vm forks:产生多个处理malloc()内存分配函数的进程,后接进程数量
-i forks
--io forks:产生多个处理sync()函数的磁盘I/O进程
--vm-bytes bytes:指定内存的byte数,默认值是1
--vm-hang:表示malloc分配的内存多少时间后在free()释放掉
-d :
--hdd:写进程,写入固定大小,通过mkstemp()函数写入当前目录
--hdd-bytes bytes:指定写的byte数,默认1G
--hdd-noclean:不要将写入随机ascii数据的文件unlink,则写入的文件不删除,会保留在硬盘空间。
测试场景举例
1、测试CPU负荷
输入命令:stress –c 4
增加4个cpu进程,处理sqrt()函数函数,以提高系统CPU负荷
2、内存测试
输入命令:stress –i 4 –vm 10 –vm-bytes 1G –vm-hang 100 –timeout 100s
新增4个io进程,10个内存分配进程,每次分配大小1G,分配后不释放,测试100S
3、磁盘I/O测试
输入命令:stress –d 1 --hdd-bytes 3G
新增1个写进程,每次写3G文件块
4、硬盘测试(不删除)
输入命令:stress –i 1 –d 10 --hdd-bytes 3G –hdd-noclean
新增1个IO进程,10个写进程,每次写入3G文件块,且不清除,会逐步将硬盘耗尽。
linux下服务器性能监控
top监控整体使用情况
各参数涵义如下:
load average:当前系统负载的平均值,后面的3个值分别为1分钟、5分钟、15分钟前进程的平均数。一般认为这个数超过CPU数目时,CPU将比较吃力地负载当前系统所包含的进程。
表示CPU的几个参数:
- us:用户空间占用CPU百分比
- sy:内核空间占用CPU百分比
- ni:用户进程空间内改变过优先级的进程占用CPU百分比
- id:空闲CPU百分比
- wa:等待输入输出的cpu时间百分比
输入top后,按大写P,以CPU占用大小排序,按M,以内存占用大小排序
从应用程序的角度来看,可用内存=系统free memory+buffers+cached,其中buffers/cached是为了提高文件读取的性能,当应用程序要用到内存的时候,buffer/cached会很快地被回收
服务器I/O读写负载评估
先用top查看,wa的值标识I/O等待所占用的CPU时间的百分比,高于30%时I/O压力高。
再用iostat –x 1 10查看,如果没有该文件,要yum install systat安装。
查看%util,%idle,如果%util接近100%,说明产生的I/O请求太多,I/0系统已经满负荷,该磁盘可能存在瓶颈,%idle小于70%,I/0压力就比较大了,一般读取速度有较多的等待。
同时结合vmstat -1命令,查看b参数,表示等待资源的进程数,如等待I/O,内存等,如常时间>1,则要关注。可评估i/o读写负载。
其他系统日常管理
- 查看系统的cpu数:
cat /proc/cpu info- 监控系统状态,查看具体是哪里的压力:vmstat
- proc列显示进程相关信息
- r表示运行和等待CPU时间片的进程数,如长期>服务器CPU个数,说明CPU不够用了
- swap表示内存交换情况
- 查看内存使用情况:
free- 查看系统进程:
ps aux- 打印网络连接状况:
netstat –an- 打印当前系统启动哪些端口:
netstat –lnp- 查看磁盘的使用情况和文件系统被挂载的位置:
df –lh
lLinux 下 Stress 压力测试工具的更多相关文章
- LINUX系统下MySQL 压力测试工具super smack
摘要:1.源文件下载地址:http://vegan.net/tony/supersmack/2.安装:注意在编译时,可以先把对应的libmysqlclient.so.*拷贝到/usr/lib3.测试: ...
- linux 下网站压力测试工具webbench
一直在用webbench ,这个linux下的网站压力测试工具.整理下. 笔记本装的ubuntu,其他linux系统也差不多. webbench 需要先安装 ctags,一个vim的阅读插件,可以直接 ...
- linux下web压力测试工具ab使用及详解
APACHE自带的测试工具AB(apache benchmark).在APACHE的bin目录下.格式: ./ab [options] [http://]hostname[:port]/path参数: ...
- Linux下的压力测试工具:ab、http_load、webbench、siege
一.ab 1.1 介绍 ab是apache自带的一款功能强大的测试工具. 安装了apache一般就自带了. 1.2 下载 同apache. 1.3 安装 同apache. 1.4 安装结果 ...
- tony_linux下网站压力测试工具webbench
webbench最多可以模拟3万个并发连接去测试网站的负载能力,个人感觉要比Apache自带的ab压力测试工具好,安装使用也特别方便. 1.适用系统:Linux 2.编译安装:wget http:// ...
- Linux下使用压力测试工具stress
一:stress的安装 首先解压安装包到/usr/local/src/下 mv stress-1.0.4.tar.gz /usr/local/srctar -zxf stress-1.0.4.tar ...
- windows下Jmeter压力测试工具的安装
JMeter是Apache软件基金会的产品,用于对静态的和动态的资源(文件,Servlet,Perl脚本,Java 对象,数据库和查询,FTP服务器等等)的性能进行测试.是一款很方便的测试软件. 系统 ...
- LINUX下网站压力测试工具webbench
wget http://blog.s135.com/soft/linux/webbench/webbench-1.5.tar.gz tar zxvf webbench-1.5.tar.gz cd we ...
- Linux:linux服务器稳定性压力测试工具stress安装与使用
stress是一个linux下的压力测试工具,专门为那些想要测试自己的系统,完全高负荷和监督这些设备运行的用户. 1. stress1.0.4下载地址 下载:https://fossies.org/l ...
随机推荐
- Waiting for table flush 阻塞查询的问题
1.此状态表示大量thread正在等待慢查询语句执行完成. 原因: The thread got a notification that the underlying structure for a ...
- 使用IP在局域网内访问System.Net.HttpListenerException:“拒绝访问。”
记录一下,自己写的程序之前运行没有遇到这个问题,突然遇到这个问题,找了一圈没有找到有效的解决方案,到最后发现,以管理员身份运行程序即可.简单记录一下. 还有就是 .UseUrls("http ...
- 【改】DOS文件格式转UNIX文件格式
windows中的文本文件的换行符是"\r\n",而linux中是"\n",dos格式文件传输到unix系统时,会在每行的结尾多一个^M,当然也有可能看不到,但 ...
- Vuex 学习笔记一
一.定义 Vuex是一个专为Vue.js应用程序开发的状态管理模式. 状态管理模式 简单的demo new Vue({ // state data () { return { count: 0 } } ...
- 前端每日实战:21# 视频演示如何用纯 CSS 创作文本滑动特效的 UI 界面
效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/QrxxaW 可交互视频教程 此视频 ...
- springboot--异步执行的方法及定时执行的方法
让方法被调用后异步的执行 一般来说,要异步执行一个任务都是创建一个线程来专门干这个任务.在springboot中有 @Async 这个注解快速实现方法的异步执行.只需要两步:第一步: 在启动类上加上@ ...
- mybatis返回新增对象的主键
加这两行就可以返回这个插入对象的自增的主键<insert id="insertSeatPortraitData" parameterType="seatPortra ...
- Graph Neural Networks for Computer Vision
Graph Neural Networks for Computer Vision I was attracted by this image: This is an inspiring image ...
- shell第一个脚本
mkdir 创建目录touch 创建空文件 chmod +x ./test.sh #使脚本具有执行权限
- 一篇文章让你详细了解何为JSON
JSON详解: JSON的全称是“ JavaScript Object Notation”,意思是JavaScript对象表示法,它是一种基于文本,独立于语言的轻量级数据交换格式.XML也是一种数据交 ...