• http_load是一款基于Linux平台的web服务器性能测试工具,用于测试web服务器的吞吐量与负载,web页面的性能。
  • http_load是基于linux、unix平台的一种性能测工具

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

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

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



  1. wget http://www.acme.com/software/http_load/http_load-12mar2006.tar.gz
    tar xzvf http_load-12mar2006.tar.gz
    cd http_load-12mar2006
  1. make &make install
    可能会出现以下错误:

  

  1. 解决依赖包
  2. yum install -y gcc*

  

  1. 解决方法:
  2. mkdir /usr/local/man

  

http_load的使用

建立URL集合文件

  1. vim url.txt
  2. #我的博客地址网站
  3. http://192.168.31.66:8686/upload/

  1.  

  

  1. 使用方法:
  2. -parallel 简写-p :含义是并发的用户进程数。
  3. -fetches 简写-f :含义是总计的访问次数
  4. -rate 简写-p :含义是每秒的访问频率
  5. -seconds简写-s :含义是总计的访问时间
  • 只要使用http_load命令,-parallel或者-rate必须填一个

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

  

  1. [root@MiWiFi-R1CM-srv ~]# http_load -rate 5 -seconds 10 url.txt
  2. http://192.168.31.66:8686/upload/: byte count wrong
  3. 49 fetches, 1 max parallel, 659443 bytes, in 10.0001 seconds
  4. 13458 mean bytes/connection
  5. 4.89996 fetches/sec, 65943.8 bytes/sec
  6. msecs/connect: 1.24116 mean, 4.237 max, 0.361 min
  7. msecs/first-response: 41.323 mean, 53.493 max, 27.973 min
  8. 1 bad byte counts
  9. HTTP response codes:
  10. code 200 -- 49
  11.  
  12. 执行了一个持续时间10秒的测试,每秒的频率为5

  

  1. [root@MiWiFi-R1CM-srv ~]# http_load -p 10 -f 5000 url.txt
  2. 5000 fetches, 10 max parallel, 6.7295e+07 bytes, in 137.336 seconds
  3. 13459 mean bytes/connection
  4. 36.4071 fetches/sec, 490003 bytes/sec
  5. msecs/connect: 0.347501 mean, 4.285 max, 0.11 min
  6. msecs/first-response: 271.953 mean, 455.505 max, 79.432 min
  7. HTTP response codes:
  8. code 200 -- 5000
    执行了一个总访问次数为5000 并发进程数为10的测试

  

结果解释

  1. 5000 fetches, 10 max parallel, 6.7295e+07 bytes, in 137.336 seconds
  2. 说明在上面的测试中运行了5000个请求,最大的并发进程数是10,总计传输的数据是 6.7295e+07bytes,运行的时间是 137.336
  3.  
  4. 13459 mean bytes/connection
  5. 说明每一连接平均传输的数据量6.7295e+07/5000=13459
  6.  
  7. 36.4071 fetches/sec, 490003 bytes/sec
  8. 说明每秒的响应请求为36.4071 ,每秒传递的数据为490003 bytes/sec
  9.  
  10. msecs/connect: 0.347501 mean, 4.285 max, 0.11 min
  11. 说明每连接的平均响应时间是0.347501msecs,最大的响应时间4.285 msecs,最小的响应时间0.11 msecs
  12. msecs/first-response: 271.953 mean, 455.505 max, 79.432 min
  13. 每秒响应用户数和response time,每连接响应用户时间
  14.  
  15. HTTP response codes:
  16. code 200 -- 5000
  17. 明打开响应页面的类型,如果403的类型过多,那可能要注意是否系统遇到了瓶颈。
  18. 特殊说明:这里,我们一般会关注到的指标是fetches/secmsecs/connect

  

  1. 可能出现的输出错误
  2. 1)byte count wrong
  3. http_load在处理时会去关注每次访问同一个URL返回结果(即字节数)是否一致,若不一致就会抛出
    byte count wrong
  4.  
  5. 2)too many open files
  6. 系统限制的open files太小,ulimit -n 修改open files值即可
  7.  
  8. 3)无法发送大请求 (请求长度>600个字符)
  9. 默认接受请求的buf大小 http_load.c
  10.  
  11. 4)Cannot assign requested address
  12. 客户端频繁的连服务器,由于每次连接都在很短的时间内结束,导致很多的TIME_WAIT,以至于用光了可用
    的端口号,所以新的连接没办法绑定端口,所以要改客户端机器的配置,
  13. sysctl.conf里加:
  14. net.ipv4.tcp_tw_reuse = 1 表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,
    默认为0,表示关闭;
  15. net.ipv4.tcp_timestamps=1 开启对于TCP时间戳的支持,若该项设置为0,则下面一项设置不起作用
  16. net.ipv4.tcp_tw_recycle=1 表示开启TCP连接中TIME-WAIT sockets的快速回收

  

web性能测试工具——http_load的更多相关文章

  1. Web性能测试工具:http_load安装&使用简介

    除了siege,在Web性能测试工具中,http_load也是比较热门和常见的一款,有时因为种种原因,只能使用现成的工具,所以多了解和掌握一种Web性能测试工具是很有必要的. 1.下载安装包 略过 2 ...

  2. pylot是一款开源的web性能测试工具

    pylot是一款开源的web性能测试工具,http://www.pylot.org/ 参考文档:http://www.pylot.org/gettingstarted.html很容易上手 使用分为以下 ...

  3. 【web性能】web性能测试工具推荐

    WEB性能测试工具主要分为三种,一种是测试页面资源加载速度的,一种是测试页面加载完毕后页面呈现.JS操作速度的,还有一种是总体上对页面进行评价分析,下面分别对这些工具进行介绍,如果谁有更好的工具也请一 ...

  4. Web性能测试工具:Siege安装&使用简介

    在Web性能测试工具中,siege是比较热门和常见的,它有安装简单,使用简单,测试报告详细的特点. 并且可以在文本中预定义一系列待测试url模拟,并可设定一定并发量下持续指定时间or测试进行测试. 比 ...

  5. Web性能测试工具推荐

    WEB性能测试工具主要分为三种: 一种是测试页面资源加载速度的: 一种是测试页面加载完毕后页面呈现.JS操作速度的: 一种是总体上对页面进行评价分析. ~~~如果谁有更好的工具也请一起分享下   1. ...

  6. Web性能测试工具JMeter

    做Web方面的黑盒测试,也就是功能测试,基本不需要什么测试工具,都是直接打开浏览器访问,点一点界面就行. 现在流行的移动互联网应用,客户端和服务端的开发是分离的,两者开发进度肯定不一样,可能存在服务端 ...

  7. 2015第22周一Web性能测试工具及IE扩展区别

    在高性能web测试工具推荐http://www.jb51.net/article/23034.htm中发现了dynaTrace 感觉很不错,不但可以检测资源加载瀑布图,而且还能监控页面呈现时间,CPU ...

  8. Web性能测试工具之ab入门篇

    1. ab简介 ab全称Apache Bench,是apache附带的一个小工具,它可以同时模拟多个并发请求,测试apache等Web服务器的最大负载压力. 本文通过一个简单的示例,介绍了使用ab进行 ...

  9. Apache-Jemeter web性能测试工具使用

    Jmeter是一款java开源的性能测试软件. 要使用该工具进行性能测试,首先需要下载该工具到你的电脑,接着配置java开发环境以及Jmeter环境.搭建完成之后,OK,我们就可以进行测试了. 测试第 ...

随机推荐

  1. 第5次 Beta Scrum Meeting

    本次会议为Beta阶段第6次Scrum Meeting会议 会议概要 会议时间:2021年6月6日 会议地点:「腾讯会议」线上进行 会议时长:10min 会议内容简介:对完成工作进行阶段性汇报:对下一 ...

  2. [对对子队]会议记录4.17(Scrum Meeting8)

    今天已完成的工作 何瑞 ​ 工作内容:修复了一些bug,优化了UI ​ 相关issue:搭建关卡1 ​ 相关签入:4.17签入1 吴昭邦 ​ 工作内容:做了一些流水线系统的错误处理,添加了合成失败了之 ...

  3. 热身训练1 Problem B. Harvest of Apples

    http://acm.hdu.edu.cn/showproblem.php?pid=6333 题意: 求 C(0,n)+C(1,n)+...+C(m,n) 分析: 这道题,我们令s(m,n) = C( ...

  4. 【BZOJ-2199】奶牛议会

    链接: BZOJ-2199 题意: 给出 \(n(1\leq n\leq 1000)\) 个点,\(m(1\leq m\leq 4000)\) 个形如:"点 \(a\) 取 \(ca\) 或 ...

  5. laravel groupby 报错

    报错信息 laravel which is not functionally dependent on columns in GROUP BY clause; this is incompatible ...

  6. 【linux命令】 磁盘管理

    du du是查看硬盘的使用情况,统计文件或目录的空间大小. -a 显示所有目录或文件的大小 -b 以byte为单位,显示目录或文件的大小 -c 显示目录或文件的总和 -k 以KB为单位输出 -m 以M ...

  7. Linux&C———进程间通信

    管道和有名管道 消息队列 共享内存 信号 套接字 由于进程之间的并不会像线程那样共享地址空间和数据空间,所以进程之间就必须有自己特有的通信方式,这篇博客主要介绍自己了解到的几种进程之间的通信方式,内容 ...

  8. BAT面试必问细节:关于Netty中的ByteBuf详解

    在Netty中,还有另外一个比较常见的对象ByteBuf,它其实等同于Java Nio中的ByteBuffer,但是ByteBuf对Nio中的ByteBuffer的功能做了很作增强,下面我们来简单了解 ...

  9. [第二章]c++学习笔记3(构造函数)

    成员函数的一种 (1)名字与类名相同,可以有参数,不能有返回值(void也不行) (2)作用是对对象初始化,如给成员变量赋初值 (3)如果定义类时没写构造函数,则编译器生成一个默认的无参数的构造函数( ...

  10. jQuery css()选择器使用说明

    css选择器只是jquery中的一个功能罢了,下面我来给各位朋友详细介绍jQuery css()选择器使用方法与说明详解,有需要了解学习的同学可参考. CSS操作有一个重要的方法:CSS() CSS( ...