WEB服务器常见性能压力测试工具

1 webbench 当前版本1.5,

webbench是Linux下的一个网站压力测试工具,最多可以模拟3万个并发连接去测试网站的负载能力. 文件小,速度相当快,参数简单,但是结果性能指标不是很详细.
下载地址
centos 安装

#tar zxvf webbench-1.5.tar.gz
#cd webbench-1.5
#make && make install

生成目录下webbench可执行文件,直接可以使用了
webbench -c 1000 -t 130 [–get] [–head ] http://www.baidu.com/
结果
speed= pages/min bytes/sec
requests: susceed, faild

2 http_load
http_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载
源文件小,速度比webbench慢(它可以以一个单一的进程运行).但结果性能指标就比webbench详细
下载地址
命令:http_load -p 100 -s 10 url.txt
bytes/connection每一连接平均传输的数据量
fetches/sec 每秒的响应请求为
bytes/sec每秒的响应请求
msecs/connect每连接的平均响应时间: max min
msecs/first-response: mean,max,min
测试的结果主要看fetches/sec、msecs/connect

3 Siege
一款开源的压力测试工具,可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进行
下载地址
Siege解压并安装:

# tar -zxvf siege-latest.tar.gz
# cd siege-latest/
#./configure
#make
#make install

命令siege -c 100 -r 10 -f url
-c是并发量,-r是重复次数。
他的指标也比较详尽
ransactions:hits //完成次处理
Availability: % // % 成功率
Elapsed time: secs //总共用时
Data transferred: MB //共数据传输 MB
Response time: secs //显示网络连接的速度
Transaction rate: trans/sec //均每秒完成 次处理:表示服务器后
Throughput: MB/sec //平均每秒传送数据
Concurrency: //实际最高并发数
Successful transactions: //成功处理次数
Failed transactions: //失败处理次数
Longest transaction: //每次传输所花最长时间
Shortest transaction: //每次传输所花最短时间

4 appache benchmark
在安装httpd软件包时ab 就已经安装,/usr/bin/ab 当前版本2.3
ab -c 100 -n 10 http://www.baidu.com/
-c 一次并发请求的次数
-n 总共请求的次数

结果参数
time take for tests:测试总用时
Total transfer: 总传输量
html transfer: html 传输量
request per second: 每秒接收请求数
time per request : 每次并发请求时间/每次请求时间

5 Apache 的日志分析工具:webalizer 下载网址 www.webalizer.org
我们可以去官网上下载最新版本2.23-05 的源码 也可以安装rpm包版本是webalizer-2.01_10-30.1.i386.rpm ,版本比较低,这里我们就用rpm包
安装好之后 机会形成一些目录和文件在/usr/bin/webalizer 就是我们所需要的日志分析工具.
Webalizer 这种工具是把分析的结果形成一个文件,文件里有图片有表格等,并且这个文件可以以网页的形式打开。
-t 指明报告题目的主机名可以是网站的名称
-F 日志格式类型有clf /ftp/ squid
-p 递增模式 ,没分析一次后就会产生一个历史文件,这样下次在分析的时候,就可以不处理分析过的部分。
-o 指定存放分析结果内容的文件。
-n 指定的服务器的主机名 。
命令格式如下
/usr/bin/webalizer -F clf -p -n “www.baidu.com” -t “www.baidu.com” -o “/var/www/html/log” /var/log/httpd/access_log

脚本使用简介: /******************************************************************************** void tcc_tell_user(long len,const char *fmt,...) void tcc_init_stochastic() int tcc_produce_stochastic(int a,int b) tcc_sscanf tcc_sprintf tcc_strcpy tcc_strcmp tcc_strstr tcc_strcat tcc_memcpy tcc_memcmp tcc_memset tcc_strlen tcc_malloc tcc_free *********************************************************************************/ void get_hex_string(unsigned char *in_dat,int in_len,char *ou_hex) { int i; char *t=(char*)tcc_malloc(8); ou_hex[0]=0; for(i=0;i<in_len;i++) { if(i%0x04==0 && i!=0) tcc_strcat(ou_hex," "); if(i%0x10==0 && i!=0) tcc_strcat(ou_hex,"\n"); tcc_sprintf(t,"X ",in_dat[i]); tcc_strcat(ou_hex,t); } tcc_free(t); } void msg_init() { // tcc_init_stochastic(); } void *msg_short_connect_form_data(long t,long s,long c,long *len) { char *data=(char*)tcc_malloc(128); *len=128; *(long*)(data+0x00)=128; *(long*)(data+0x04)=1; *(long*)(data+0x08)=0; *(long*)(data+0x0C)=0; int n=tcc_produce_stochastic(100,50000); tcc_sprintf(data+0x10,"hello%d",n); tcc_strcpy(data+0x20,"123456"); return data; } int msg_short_connect_recv_data(long s,long c,void *dat,long len) { unsigned char *ou_dat=(unsigned char*)tcc_malloc(5120); get_hex_string(dat,len,ou_dat); tcc_tell_user(5120,"s:%d c:%d len:%d\n%s\n\n",s,c,len,ou_dat); tcc_free(ou_dat); return 1; } void *msg_long_connect_form_data(long op,long s,long c,long *len) { char *data=(char*)tcc_malloc(128); *len=128; *(long*)(data+0x00)=128; *(long*)(data+0x04)=1; *(long*)(data+0x08)=0; *(long*)(data+0x0C)=0; int n=tcc_produce_stochastic(100,50000); tcc_sprintf(data+0x10,"hello%d",n); tcc_strcpy(data+0x20,"123456"); return data; } int msg_long_connect_recv_data(long s,long c,void *dat,long len) { unsigned char *ou_dat=(unsigned char*)tcc_malloc(5120); get_hex_string(dat,len,ou_dat); tcc_tell_user(5120,"s:%d c:%d len:%d\n%s\n\n",s,c,len,ou_dat); tcc_free(ou_dat); return 1; } void msg_free_data(void *arg) { tcc_free(arg); }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值