三种web性能压力测试工具
三种web性能压力测试工具http_load webbench ab小结
题记:压力和性能测试工具很多,下文讨论的是我觉得比较容易上手,用的比较多的三种
http_load
下载地址:http://www.acme.com/software/http_load/http_load-12mar2006.tar.gz
程序非常小,解压后也不到100K 居家旅行携带方便 呵呵
http_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载。但是它不同于大多数压力测试工具,它可以以一个单一的进程运行,一般不会把客户机搞死。可以可以测试HTTPS类的网站请求。
命令格式:http_load -p 并发访问进程数 -s 访问时间 需要访问的URL文件
例如:
引用
http_load -p 30 -s 60 urllist.txt
准备URL文件:tst.list,文件格式是每行一个URL,URL最好超过50-100个测试效果比较好,另外,测试结果中主要的指标是fetches/sec 这个选项,即服务器每秒能够响应的查询次数,用这个指标来衡量性能。似乎比 apache的ab准确率要高一些,也更有说服力一些。
官方的例子:
引用
% ./http_load -rate 10 -seconds 60urllist.txt
49 fetches, 4 max parallel, 289884 bytes,in 10.0148 seconds
5916 mean bytes/connection
4.89274 fetches/sec, 28945.5 bytes/sec
msecs/connect: 28.8932 mean, 44.243 max,24.488 min
msecs/first-response: 63.5362 mean, 81.624max, 57.803 min
4.89274 fetches/sec 这个值得就是说服务器每秒能够响应的查询次数为4.8左右
这个值得是根据 49 fetches / 10.0148 seconds 秒计算出来的
webbench
webbench是Linux下的一个网站压力测试工具,最多可以模拟3万个并发连接去测试网站的负载能力。下载地址可以到baidu google搜,我这里给出一个
下载地址:http://cid-9601b7b7f2063d42.skyd ... webbench-1.5.tar.gz
这个程序更小,解压后不到50K,呵呵
安装非常简单
#tar zxvf webbench-1.5.tar.gz
#cd webbench-1.5
#make && make install
会在当前目录生成webbench可执行文件,直接可以使用了
用法:
webbench -c 并发数 -t 运行测试时间 URL
如:
webbench -c 5000 -t 120http://www.askwan.com
ab
ab是apache自带的一款功能强大的测试工具
安装了apache一般就自带了,
用法可以查看它的说明
引用
$ ./ab
./ab: wrong number of arguments
Usage: ./ab [options][http://]hostname[:port]/path
Options are:
-n requests Number of requests to perform
-c concurrency Number of multiple requeststo make
-t timelimit Seconds to max. wait forresponses
-p postfile File containing data to POST
-T content-type Content-type header forPOSTing
-v verbosity How much troubleshooting infoto print
-w Print out results in HTML tables
-i Use HEAD instead of GET
-x attributes String to insert as tableattributes
-y attributes String to insert as trattributes
-z attributes String to insert as td or thattributes
-C attribute Add cookie, eg. 'Apache=1234.(repeatable)
-H attribute Add Arbitrary header line, eg.'Accept-Encoding: gzip'
Inserted after all normal header lines.(repeatable)
-A attribute Add Basic WWW Authentication,the attributes
are a colon separated username andpassword.
-P attribute Add Basic ProxyAuthentication, the attributes
are a colon separated username andpassword.
-X proxy:port Proxyserver and port numberto use
-V Print version number and exit
-k Use HTTP KeepAlive feature
-d Do not show percentiles served table.
-S Do not show confidence estimators andwarnings.
-g filename Output collected data tognuplot format file.
-e filename Output CSV file withpercentages served
-h Display usage information (this message)
参数众多,一般我们用到的是-n 和-c
例如:
./ab -c 1000 -n 100http://www.askwan.com/index.PHP
这个表示同时处理1000个请求并运行100次index.php文件.
nmon 工具可以为 AIX 和 Linux 性能专家提供监视和分析性能数据的功能
一、下载nmon工具和nmon****yser
Nmon下载:
位置:可从IBM Wiki上下载
http://www-941.haw.ibm.com/colla ...play/WikiPtype/nmon
例如我测试的系统是AIX5.3,那么就可以下载nmon4aix12e.zip ,下载后我们可以看到压缩包里是一些文件,
其实nmon就是shell脚本,nmon文件运行时调用其他的文件,生成性能数据,这个工具运行时也是通过执行nmon脚本接受参数。
Nmon****yser下载:
位置:可从可从IBM Wiki上下载
http://www-941.haw.ibm.com/colla ...iptype/nmon****yser
二、上传nomn工具到服务器上&修改属性
将nmon4aix12e.zip里的文件ftp到服务器上,目录任意,最好自己新建一个目录,然后将文件的属性修改为可执行的:chmod 755 nmon_aix53
三、在服务器上运行nmon脚本
进入/home/nmon目录
cd /home/nmon
运行nmon脚本
./nmon -fT -s 30 -c 120
其中30表示每隔30秒nmon取一次系统性能数据,120表示取120次;
这样nmon将会在运行开始算起连续取得30sX120=60分钟,可根据实际需要时间调整;
当运行以上命令后该目录下会生成一个.nmon文件,该文件会根据间隔时间被写入性能数据,当一段时间后再查看该文件,文件字节变大;
四、利用nmon****yser分析.nmon文件
当测试结束的同时ftp到服务器上将.nmon文件get下来,
打开nmon_****yser.zip 包下的nmon ****yser v338.xls 文件,点击****yse nomndata按钮,选择之前get来下的.nmon文件。
(如果报告以下宏的安全级别太高错误,则在“工具 -- 宏 --安全性”里把级别调低,然后重新打开 nmon ****yser v338.xls 文件)
待分析结束后会生成性能分析结果文件(文件格式为.xls,其中包括CPU,IO,内存等性能分析报告)。
分析结果中有很多数据和图形,简要介绍主要的性能参数图像
4.1 系统汇总(对应excel标签的‘SYS_SUMM’)
蓝线为cpu占有率变化情况;
粉线为磁盘IO的变化情况;
4.2磁盘读写情况汇总(对应excel标签的‘DISK_SUMM’)
蓝色为磁盘读的速率KB/sec
紫色为磁盘写的速率KB/sec
4.3内存情况汇总(对应excel标签的‘MEM’)
曲线表示内存剩余量(MB)
分析数据得到的报告文件(.xls)中包含很多性能分析结果数据,根据自己的需要查看。
五、nmon运行本身就消耗系统资源的;
另外如果取到.nmon文件后确定不再需要nmon继续收集信息则应kill掉nmon;
命令:
1.ps -A | grep nmon #得到pid
2.kill -9 pid
六、定时任务
在很多情况下,我们需要知道在一个连续的时间段里,机器的性能情况。例如,记录每天的机器性能状况,步骤如下:
建nmon目录/nmon,在目录下建两个子目录/nmon/bin和/nmon/data目录,
把下载下来的nmon程序放到bin目录下,aix下的nmon可执行文件名称可能为:
nmon_aix53
在/nmon/bin目录下建一个脚本文件nmon.sh,内容如下:
#!/bin/ksh
BINPATH=`dirname $0`
NPATH=$BINPATH/../data
$BINPATH/nmon_aix53 -s300 -c288 -f -m$NPATH
-s300表示每300秒采集一次数据,
-c288表示采集288次,300*288=86400秒,刚好是1天的数据,这样运行一次这个程序就会生成一个一天的数据文件,
-m$NPATH表示生成的数据文件的路径
-f表示生成的数据文件名中有时间
然后在crontab 中增加一条记录:
0 0 * * * /home/sun/nmon/bin/nmon.sh>/dev/null 2>&1
这样每天凌晨都会运行nmon,这样每天都会生成一个nmon文件。
生成的文件名为:myhost _090507_0000.nmon,“myhost”是这台主机的hostname。
把生成的数据文件传到Windows机器上,用Excel打开分析工具nmon ****yser v33A.xls
然后再点Excel文件中的“****yze nmon data”按钮,选取那个性能数据文件
这样就会生成一个分析后的结果文件:myhost_090507_0000.nmon.xls
用Excel打开生成的Excel文件就可以看到结果了。
*CPU 使用率
*内存使用情况
*内核统计信息和运行队列信息
*磁盘 I/O 速度、传输和读/写比率
*文件系统中的可用空间
*磁盘适配器
*网络 I/O 速度、传输和读/写比率
*页面空间和页面速度
*CPU 和 AIX 规范
*消耗资源最多的进程
*IBM HTTP Web 缓存
*用户自定义的磁盘组
*计算机详细信息和资源
*异步 I/O,仅适用于 AIX
*工作负载管理器 (WLM),仅适用于 AIX
*IBM TotalStorage® Enterprise Storage Server® (ESS) 磁盘,仅适用于 AIX
*网络文件系统 (NFS)
*动态 LPAR (DLPAR) 更改,仅适用于面向 AIX 或 Linux 的 pSeries p5 和 OpenPower
三种web性能压力测试工具的更多相关文章
- [AapacheBench工具]web性能压力测试工具的应用与实践
背景:网站性能压力测试是性能调优过程中必不可少的一环.服务器负载太大而影响程序效率是很常见的事情,一个网站到底能够承受多大的用户访问量经常是我们最关心的问题.因此,只有让服务器处在高压情况下才能真正体 ...
- Mac下的Web性能压力测试工具:ab(ApacheBench)
Web开发,少不了的就是压力测试,它是评估一个产品是否合格上线的基本标准. ab是一种用于测试Apache超文本传输协议(HTTP)服务器的工具.apache自带ab工具,可以测试Apache.IIS ...
- (总结)Web性能压力测试工具之WebBench详解
PS:在运维工作中,压力测试是一项很重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验.但是,在压力测试中存在一个共性,那就是压力 ...
- Web性能压力测试工具之Siege详解
PS:Siege是一款开源的压力测试工具,设计用于评估WEB应用在压力下的承受能力.可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进 ...
- Web性能压力测试工具之WebBench
在运维工作中,压力测试是一项很重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验.但是,在压力测试中存在一个共性,那就是压力测试的结果 ...
- Web性能压力测试工具之WebBench详解
PS:在运维工作中,压力测试是一项很重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验.但是,在压力测试中存在一个共性,那就是压力测试 ...
- web性能压力测试工具http_load/webbench/ad
http_load 下载地址:http://www.acme.com/software/http_load/http_load-12mar2006.tar.gz 程序非常小,解压后也不到100K 居家 ...
- Web 性能压力测试工具之 Siege 详解
Siege是一款开源的压力测试工具,设计用于评估WEB应用在压力下的承受能力.可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进行.s ...
- webbench(web性能压力测试工具)
在运维工作中,压力测试是一项很重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验.但是,在压力测试中存在一个共性,那就是压力测试的结果 ...
随机推荐
- XML 的解析方法
四种XML解析方法: (1)Dom生成和解析XML文档 *解析器读入整个文档,然后构建一个驻留内存的树结构,然后代码就可以使用 DOM 接口来操作这个树结构. * 优点:整个文档树在内存中,便 ...
- 手写RateLimiter
自定义注解 封装 如果需要让接口实现限流RateLimiter使用 网关:一般拦截所有的接口 实现限流 秒杀 抢购 或者大流量的接口才会实现限流.灵活 不是所有接口都需要限流 秒杀等接口需要限流 设 ...
- js提示确认删除吗
<script language="javascript"> function delcfm() { if (!confirm("确认要删除?")) ...
- 【FINAL】NOI
我就是复习一下..根本就不是什么题解...谁也看不懂的... NOI2007 社交网络 最短路 货币兑换 斜率优化动态规划 项链工厂 线段树 生成树计数 ...
- 在Silverlight中使用SESSION
首先Session是运行在服务器上的,而Silverlight运行在客户端.因此在Silverlight中使用SESSION的说法并不准确, 只因大家经常这样搜索才起这个名字. 首先Session ...
- C# 实现WinForm窗口最小化到系统托盘代码
1.如果不想让程序在任务栏中显示,请把窗体的属性ShowInTaskbar设置为false; 2.如果想让程序启动时就最小化,请设置窗体的属性WindowState设置为Minimized.(Mini ...
- js 图片加载失败处理方法
在项目中不可避免会用到图片,尤其是列表,有时候图片会加载失败:这样就会显示一个很难看的坏图片缩略图:下面介绍两种方法,解决这个问题: 1.如果在你的项目中有引入jQuery插件,你可以使用error( ...
- 51nod 1117 贪心
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1117 1117 聪明的木匠 题目来源: 河北大学算法艺术协会 基准时间限 ...
- 01-THREE.JS 第一个场景
THREE.JS第一个场景 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...
- db2还原离线备份文件报错SQL2071N 提示“访问共享库出现错误”解决
db2 buffers buffer 提示报错: SQL2071N An error occurred while accessing the shared library “/home/db2a ...