当前位置:首页 > 技术文档 > 正文内容

Linux安装webbentch压力测试工具

admin9年前 (2016-07-04)技术文档1737

 最近在做 压力测试工具,除了apache的ab测试工具外,发现webbentch工具也不错,这里简单介绍下这两个工具。


一、webbentch安装:

    wget http://blog.s135.com/soft/linux/webbench/webbench-1.5.tar.gz
    tar zxvf webbench-1.5.tar.gz
    cd webbench-1.5
    make && make install

如果没有安装ctags,则安装的时候会报错。ctags的安装:

   apt-get install ctags

或者按照下面的步骤进行手动安装:

   wget http://prdownloads.sourceforge.net/ctags/ctags-5.8.tar.gz
   tar zxvf ctags-5.8.tar.gz
   cd ctags-5.8
   ./configure
   make && make install


二、webbentch使用:

  测试原理:指定客户端的并发数和执行时间,查看服务器发出的请求中susceed的个数和failed的个数

  使用命令:webbench -c 10000 -t 60 http://xx.xx.xx.156:8082/index.html

  -c: 发起请求的客户端数,也就是我们所说的并发数

  -t:执行时间长度

  执行结果如下:

  Webbench – Simple Web Benchmark 1.5

  Requests: 1033020 susceed, 5 failed.

  Copyright (c) Radim Kolar 1997-2004, GPL Open Source software.

  Benchmarking: GET http://10.103.13.156:8082/index.html
  10000 clients, running 60 sec.
                                                                                                
  Speed=1033025 pages/min, 3856600 bytes/sec.

  Requests: 1033020 susceed, 5 failed.


三、apache的ab使用:

  测试原理:指定客户端的并发数和请求总量,计算服务器每秒可以处理的请求数和每个请求响应的时间

  使用命令:ab -c 10000 -n 80000 http://xx.xx.xx.156:8082/index.html

  -c : 发起请求的客户端数,也就是我们所说的并发数

  -n:发起的总请求数

  执行结果如下:

   需要关心的几个参数:Requests per second、Time per request

This is ApacheBench, version 2.3 <$Revision: 1528965 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/


Benchmarking 10.103.13.156 (be patient)
Completed 8000 requests
Completed 16000 requests
Completed 24000 requests
Completed 32000 requests
Completed 40000 requests
Completed 48000 requests
Completed 56000 requests
Completed 64000 requests
Completed 72000 requests
Completed 80000 requests
Finished 80000 requests

Server Software:        nginx                                             //web服务器
Server Hostname:        xx.xx.xx.156                             //web服务器地址
Server Port:            8082                                                //web服务器端口

Document Path:          /index.html                                //请求地址
Document Length:        2 bytes                                    //返回的数据长度

Concurrency Level:      10000                                      //设置的并发数,就是-c设置的值
Time taken for tests:   13.691 seconds                       //所有请求执行完成所耗费的时间
Complete requests:      80000                                      //完成的请求数
Failed requests:        0                                                    //失败的请求数
Total transferred:      17920000 bytes                         //传递数据的大小,包括header的信息
HTML transferred:       160000 bytes                           //传递的html的大小,这里的数字等于   (Document Length)  *  (Complete requests)
Requests per second:    5843.27 [#/sec] (mean)      //美妙的请求数,也就是我们服务器可以承受的实际并发数,即通常所受的rps
Time per request:       1711.371 [ms] (mean)             //每个请求的响应时间,mean表示是平均值
Time per request:       0.171 [ms] (mean, across all concurrent requests)   //每个请求的时间,等于   (Time taken for tests * 1000ms) / Complete requests
Transfer rate:          1278.22 [Kbytes/sec] received    //每秒传输的数据量,可以计算是否是带宽的影响

Connection Times (ms)                                                    //时间的统计
              min  mean[+/-sd] median   max
Connect:        2  156 486.3     18    4700
Processing:    12  240 920.8     19   12024
Waiting:       12  240 920.8     18   12024
Total:         29  396 1098.9     37   13050

Percentage of the requests served within a certain time (ms)
  50%     37                             //37毫秒响应了37%的请求
  66%     45                             //45毫秒响应了66%的请求
  75%    143                            //143毫秒响应了75%的请求,下面的以此类推
  80%    258
  90%   1035
  95%   3034
  98%   3702
  99%   6029
 100%  13050 (longest request)


三、注意事项:

   在使用webbentch和apache的ab进行压力测试的时候,如果测试的url地址中有多个参数,需要对url中的"&"符号进行转义,输入“\&”即可;把"&"=>"%26"是没有效果的。

如url为  http://xx.xx.xx.156:8080/info.php?p1=v1&p2=v2&p3=v3

转换后   http://xx.xx.xx.156:8080/info.php?p1=v1\&p2=v2\&p3=v3


分享到:

扫描二维码推送至手机访问。

版权声明:本文由云河空间发布,如需转载请注明出处。

本文链接:http://yuyunhe.cn/index.php/post/158.html

分享给朋友:

“Linux安装webbentch压力测试工具” 的相关文章

php简单分页类

<?php class page{            public $page; //当前页     publi...

dz第三方模块添加方法

dz第三方模块添加方法

使用dz做网站的朋友有时候会用到第三方模块专题,这就会遇到一个模块通信的问题,可是弄了半天就是“数据无法识别,请返回”, 也够雷人的,ok,这你就给大家分享下本人的一点经验,以供大家参考!dz第三方模块添加方法...

图文解说Navicat使用ssh方式连接远程MySql服务器

图文解说Navicat使用ssh方式连接远程MySql服务器

如何使用Navicat 8.0 for MySQL连接公司服务器的数据库,但我也是第一次接触这个软件,搞了半天也没连上,在网上找了很多解决的办法,其中就有使用ssh方式连接的,但写的不够详细,因此还是费了一番功夫,自己搞定的,不敢独享,特记录下来 与大家分享。首先,在Navicat的连接设置里选择S...

Discuz!二次开发必备知识——DZ程序文件目录含义

分类: DZ程序文件目录含义基于7.0的标准程序,部分与插件无关的文件不作说明文件颜色说明:红色:程序核心文件,修改这类文件时千万要注意安全!橙色:做插件几乎不会用到的文件,大概了解功能就可以了,其实我也不推荐修改这些文件绿色:函数类文件,许多功能强大的自定义函数可以调用这类文件来...

PHP实现登陆后台限制到只允许一台机器在线

方法一:# <?php# ob_start();# session_start();# class CC{#   private $REFURL="http://www.php100.com";    //登陆成功后转换页面#   private $LoginFLAG=fa...

浅谈 PHP 与手机 APP 开发(API 接口开发)

文章转载自:http://www.thinkphp.cn/topic/5023.html这个帖子写给不太了解PHP与API开发的人一、先简单回答两个问题:1、PHP 可以开发客户端?答:不可以,因为PHP是脚本语言,是负责完成 B/S架构 或 C/S架构 的S部分,即:服务端的开发。(别去纠结 GT...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。