利用http_load测试Web引擎性能

http_load是基于linux平台的性能测试工具,它体积非常小,仅100KB。它以并行复用的方式运行,可以测试web服务器的吞吐量与负载。

一、获得http_load

httpd_load的官方站是:http://www.acme.com/software/http_load/,LinuxVPS学习者直接提供了下载地址(文件来自官方)

wget -c http://soft.v5.net/tools/http_load-12mar2006.tar.gz

二、解压并编译http_load

yum -y install gcc gcc-c++            #安装GCC编辑器
tar xzvf http_load-12mar2006.tar.gz #解压http_load压缩包
cd http_load-12mar2006 #进入http_load目录
mkdir /usr/local/man #创建目录
make && make install #编译并安装

 httpload-1.jpg

三、使用方法

1、每次使用前,需要先切换到http_load目录下

cd http_load-12mar2006

由于我们默认安装在/root(帐号根目录)下,所以在使用前,SSH执行以上命令切换到该目录。

2、了解参数和文件

参数 全称 含义
-p -parallel 并发的用户进程数。
-f -fetches 总计的访问次数
-r -rate
含义是每秒的访问频率
-s -seconds 连续的访问时间
url   网站连接地址或url文件

其中,“url”是http_load-12mar2006目录下其中一个文件,在使用前,先在http_load-12mar2006新建一个空白的名为url的文件,在Winscp中或使用vi命令新建。

 httpload-2.jpg

然后在“url”里面填入您要测试的地址,如下图:

 httpload-3.jpg

然后保存文件。

3、开始测试

./http_load -p 1021 -s 10 url     #url为刚刚新建的文件

SSH执行以上命令,则向www.v5.net并发1021个线程,时间为连续10秒。

 httpload-4.jpg

四、分析结果

41 fetches, 1020 max parallel, 851898 bytes, in 10.0008 seconds
# 一共请求连接41次,最大并发线程1020个,持续10.0008秒内,总传输速率为 851898bytes
20778 mean bytes/connection
#每次请求连接平均数据量(851898÷41)
4.09969 fetches/sec, 85183.3 bytes/sec
#每秒的响应请求连接数为4.09969个,每秒传输的数据为85183.3btyes/毫秒
msecs/connect: 264.607 mean, 269.482 max, 262.187 min
#每次连接平均响应时间:264.607毫秒,最大时间:269.482毫秒,最小时间:262.187毫秒
msecs/first-response: 1949.27 mean, 5394.21 max, 380.501 min
#每次连接平均返回时间:1949.27毫秒,最大时间:5394.21毫秒,最小时间:380.501毫秒
HTTP response codes: code 200 -- 41
#HTTP返回码:200 ,一共41次。

测试结果中,主要参考fetches/secmsecs/connect数值,即服务器每秒能够响应的查询次数的数值来衡量性能,当然,单纯数值判断并不准确,还要参考CPU、内存的等消耗综合考虑。



转载内容请注明出处: 转载自V5.Net(原文:https://v5.net/CentOSApp/CentOS-http_load.html