简介

http_load是基于linux、unix平台的一种性能测工具

它以并行复用的方式运行,用以测试web服务器的吞吐量与负载,测试web页面的性能

但是它不同于大多数压力测试工具,它可以以一个单一的进程运行,一般不会把客户机搞死

还可以测试HTTPS类的网站请求

  总结特点以及缺点

特点:

基于命令行,简单、易于上手

小巧轻便,解压缩后既然还不到100kb

这款工具是开源,免费的

缺点:

仅适用于web页面的性能测试,不适用于访问数据库

测试结果分析有限

平台依赖Linux(没有Windows)

除了"http_load"Web压力测试工具以外还有比较厉害的webbench、ab、Siege 等Web测试工具

下载http_load

http_load 主页链接:http://www.acme.com/software/http_load/

进入http_load主页,点击Fetch the software.下载完成过后,通过共享工具上传至Linux

直接使用Linux Bash 命令下载

1[root@vforbox~]#cd/usr/local/src2[root@vforboxsrc]#wgethttp://www.acme.com/software/http_load/http_load-14aug2014.tar.gz安装

1[root@vforboxsrc]#tarzxvfhttp_load-14aug2014.tar.gz//解压当前文件2[root@vforboxsrc]#cdhttp_load-14aug2014//进入解压后的目录3[root@vforboxhttp_load-14aug2014]#make  //执行make,执行完make,会在当前目录生成一个http_load二进制文件。4[root@vforboxhttp_load-14aug2014]#ll5  total1246  -r--r--r--.115448097Jul152001FILES7  -rwxr-xr-x.1rootroot24400Aug2210:49http_load8  -r--r--r--.11544805414May202005http_load.19  -r--r--r--.115448047394Aug142014http_load.c10  -rw-r--r--.11544801682Aug112014Makefile11  -r-xr-xr-x.11544801178Sep132000make_test_files12  -r--r--r--.11544802397Aug22014port.h23  -r--r--r--.11544801035Mar122006README14  -r--r--r--.11544807362Jul92014timers.c15  -r--r--r--.11544803832Jul92014timers.h26  -rw-r--r--.1rootroot4760Aug2210:49timers.o17  -r--r--r--.1154480163Aug132014version.h

http_load的使用方法

1[root@vforboxhttp_load-14aug2014]#http_load--help2usage:http_load[-checksum][-throttle][-proxyhost:port][-verbose][-timeoutsecs][-sipsip_file]3-parallelN|-rateN[-jitter]4-fetchesN|-secondsN5url_file6Onestartspecifier,either-parallelor-rate,isrequired.7Oneendspecifier,either-fetchesor-seconds,isrequired.

  主要参数说明:

-parallel 简写-p :含义是并发的用户进程数

-rate 简写-r :含义是每秒的访问频率

-fetches 简写-f :含义是总计的访问次数

-seconds简写-s :含义是总计的访问时间

只要使用http_load命令,-parallel或者-rate必须填一个

只要使用http_load命令,-fetche或者-seconds必须填一个

url_file表示你的url文件路径,url文件是一个文本文件,里面填写你需要压力测试的网址,可以是一个也可以是多个

1http://www.cnblogs.com/vforbox/p/4740517.html2http://www.cnblogs.com/vforbox/p/4754618.html3http://www.cnblogs.com/vforbox/p/4754405.html示例分析

下面以笔者的一个小项目来讲解,url.txt中即存放其项目地址

1[root@vforboxhttp_load-14aug2014]#./http_load-p30-s60url.txt//表示执行了一个持续时间为60秒的测试,用户进程数为3021044fetches,30maxparallel,1.88674e+07bytes,in60seconds318072.2meanbytes/connection417.4fetches/sec,314457bytes/sec5msecs/connect:66.3438mean,1066.13max,45.677min6msecs/first-response:231.517mean,9210.48max,69.683min7HTTPresponsecodes:8code200--1044

1044个请求,最大并发数30,总计传输的数据为188674000 bytes,运行时间为60秒,关注点:总请求数、最大并发进程数

每一连接平均传输的数据量,等于188674000bytes/1044请求数=180722

每秒响应的请求数为18072.2,每秒传递的数据量为...,关注点:每秒响应的请求数(对应LoadRunner中的每秒响应用户数)

每次连接的平均响应时间是66.3438msecs,最大响应时间1066.13 msecs,最小响应时间15.677 msecs,关注点:每个连接的平均响应时间(对应quicktestProfessional中的response time,每连接响应用户时间 )

...待补充

表示打开响应页面的HTML状态码,200表示响应成功;如果403的类型过多,那可能要注意是否系统遇到了瓶颈

1[root@vforboxhttp_load-14aug2014]#http_load-parallel20-s10url.txt//同时使用20个用户进程,随机访问url.txt中的网址列表,总共访问10秒2[root@vforboxhttp_load-14aug2014]#http_load-rate60-f3000url.txt//每秒请求60次,总共请求3000次停止


原文:http://www.cnblogs.com/vforbox/p/4754618.html