http_load压测服务器

1.下载http_load ,下载地址:http://acme.com/software/http_load/http_load-12mar2006.tar.gz

[root@localhost ~]#cd /usr/local

[root@localhost local]#mkdir http_load

[root@localhost local]#chmod 777 http_load

[root@localhost local]#cd http_load

[root@localhost http_load]# wget  http://acme.com/software/http_load/http_load-12mar2006.tar.gz

 

2.解压安装http_load

#tar -zxvf http_load-12mar2006.tar.gz

#cd http_load-12mar2006

#make && make install

这里tar解压包的时候出现错误 gzip: stdin: not in gzip format

原因是这个压缩包没有用gzip格式压缩,所以不用加z参数,囧(所以不是所有的解压包都得用 -zxvf)!

改成使用tar -xvf http_load-12mar2006.tar.gz

3.使用http_load

基本用法:http_load -p 并发访问进程数 -s 访问时间 需要访问的URL文件

参数简单说明一下
-parallel   简写-p :含义是并发的用户进程数。
-fetches   简写-f :含义是总计的访问次数
-rate        简写-p :含义是每秒的访问频率
-seconds 简写-s :含义是总计的访问时间

新建url.txt文件,每个url一行

http://www.baidu.com/
http://www.baidu.com/blog/
http://www.baidu.com/signin/
http://www.baidu.com/signup/
http://www.baidu.com/article/123.html
http://www.baidu.com/article/1233.html

示例:http_load -p 100 -s 60 url.txt

#100个并发执行60秒

测试结果:852 fetches, 100 max parallel, 1.45158e+07 bytes, in 60 seconds

说明在上面的测试中运行了852个请求,最大的并发进程数是100,总计传输的数据是1.45158e+07bytes,运行的时间是60秒

17037.3 mean bytes/connection

说明每一连接平均传输的数据量1.45158e+07  / 852 =17037.3


14.2 fetches/sec, 241930 bytes/sec

说明每秒的响应请求为14.2 ,每秒传递的数据为241930 bytes/sec


msecs/connect: 0.165399 mean, 15.884 max, 0.031 min

说明每连接的平均响应时间是0.165399 msecs,最大的响应时间15.884 msecs,最小的响应时间0.031 msecs
msecs/first-response: 6634.48 mean, 7501.29 max, 462.391 min
83 bad byte counts
HTTP response codes:
  code 200 -- 852

 

 

常见错误:

1.

(1)byte count wrong
http_load在处理时会去关注每次访问同一个URL返回结果(即字节数)是否一致,若不一致就会抛出byte count wrong ,所以动态页面可以忽略这个错误信息。

(2)too many open files
系统限制的open files太小,ulimit -n 修改open files值即可

(3)无法发送大请求 (请求长度>600个字符)
默认接受请求的buf大小 http_load.c

(4)Cannot assign requested address
客户端频繁的连服务器,由于每次连接都在很短的时间内结束,导致很多的TIME_WAIT,以至于用光了可用的端口号,所以新的连接没办法绑定端口,所以要改客户端机器的配置,
在sysctl.conf里加:
net.ipv4.tcp_tw_reuse = 1 表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;
net.ipv4.tcp_timestamps=1 开启对于TCP时间戳的支持,若该项设置为0,则下面一项设置不起作用
net.ipv4.tcp_tw_recycle=1 表示开启TCP连接中TIME-WAIT sockets的快速回收

转载于:https://my.oschina.net/u/2544569/blog/3039777

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值