zoukankan      html  css  js  c++  java
  • 【转】http_load压力测试过程和使用方式

    介绍:http_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载。但是它不同于大多数压力测试工具,它可以以一个单一的进程运行,一般不会把客户机搞死。还可以测试HTTPS类的网站请求。

    一、http_load安装

    1)下载http_load安装包

    A、可以直接下载:wget http://acme.com/software/http_load/http_load-12mar2006.tar.gz

    B、可以直接下载到本地,然后通过CRT上传到linux服务器。

    2)安装http_load

    A、进入/usr/local目录下创建man文件夹,并赋予权限;

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

    [root@localhost local]#mkdir man

    [root@localhost local]#chmod 777 man

    B、进man文件夹中,下载http_load安装包;

    [root@localhost local]#cd man

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

    C、解压、并安装http_load-12mar2006.tar.gz包;

    [root@localhost man]# tar zxvf http_load-12mar2006.tar.gz

    [root@localhost man]# cd http_load-12mar2006

    [root@localhost http_load-12mar2006]# make

    [root@localhost http_load-12mar2006]# sudo make install

    二、http_load使用

    1、创建URL文件

    由于http_load运行的是URL文件,所以需要准备一个txt文件;于是,创建一个test.txt文件。

    [root@localhost http_load-12mar2006]# touch test.txt

    编辑test.txt文件:

    [root@localhost http_load-12mar2006]# vi test.txt

    输入如图地址后,保存并退出:

    2、运行URL文件

    [root@localhost http_load-12mar2006]# http_load -p 10 -s 10 test.txt

    说明:

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

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

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

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

    由于我是虚拟机里弄的,所以会看到如下图:

    3、结果分析

    1)图中“96 fetches, 10 max parallel, 1.1037e+07 bytes, in 10 seconds”

    解释:在上面的测试中运行了96个请求,最大的并发进程数是10,总计传输的数据是1.1037e+07bytes,运行的时间是10秒

    2)图中“114968 mean bytes/connection”

    解释:每一连接平均传输的数据量1.1037e+07/96=114968

    3)图中“9.59998 fetches/sec, 1.10369e+06 bytes/sec”

    解释:每秒的响应请求为9.59998,每秒传递的数据为1.10369e+06 bytes/sec

    4)图中“msecs/connect: 99.3326 mean, 3005.02 max, 4.132 min”

    解释:每连接的平均响应时间是99.3326 msecs,最大的响应时间3005.02 msecs,最小的响应时间4.132 msecs

    5)图中“msecs/first-response: 71.5985 mean, 708.071 max, 4.093 min”

    6)图中“HTTP response codes:code 200 — 96”

    解释:打开的页面类型是200,如果出现403等过多就说明系统遇到瓶颈了。

    说明:

    一般使用http_load做压力测试时,主要会考虑这“fetches/sec、msecs/connect ”两个项的结果,即服务器每秒能够响应的查询次数来衡量性能指标。

    另一方面可以借助nmon来监控linux服务器的CPU、MEN等进行分析。

    http_load使用方式:

    http_load -parallel 100 -fetches 10000

    #100个并发执行10000次

    http_load -parallel 100 -seconds 3600

    #100个并发执行1小时

    http_load -rate 100 -fetches 10000

    #每秒100个请求频率,请求10000次

    http_load -rate 100 -seconds 3600

    #每秒100个请求频率执行1小时

  • 相关阅读:
    A
    B
    C
    I
    公共最大字串长度
    docker run 的背后的故事(zz)
    python之多并发socket(zz)
    Python垃圾回收机制:gc模块(zz)
    我要做的git的分享(zz)
    SpringMVC框架入门配置 IDEA下搭建Maven项目(zz)
  • 原文地址:https://www.cnblogs.com/yanghj010/p/5961899.html
Copyright © 2011-2022 走看看