Nginx压力测试工具之WebBench

 

在Apache中有自带的ab命令可以测试服务的压力,而nginx没有自带的命令,必须要采用第三方软件来测试,今天就简单介绍一下webbench对nginx的压力测试,压力测试是对系统管理员和运维人员必须的,可以很清晰地看清服务器能接受多大压力.注:本人是在虚拟机上做测试。

1.下载webbench软件和安装

wget http://home.tiscali.cz/~cz210552/distfiles/webbench-1.5.tar.gz

tar xvf webbench-1.5.tar.gz  -C /usr/local/

cd /usr/local/webbench-1.5/

make

make install

2.命令详解

[root@CentOS179min webbench-1.5]# ./webbench -help                                    
webbench [option]... URL
  -f|--force              Don't wait for reply from server.
  -r|--reload              Send reload request - Pragma: no-cache.
  -t|--time <sec>          Run benchmark for <sec> seconds. Default 30.
  -p|--proxy <server:port> Use proxy server for request.
  -c|--clients <n>        Run <n> HTTP clients at once. Default one.
  -9|--http09              Use HTTP/0.9 style requests.
  -1|--http10              Use HTTP/1.0 protocol.
  -2|--http11              Use HTTP/1.1 protocol.
  --get                    Use GET request method.
  --head                  Use HEAD request method.
  --options                Use OPTIONS request method.
  --trace                  Use TRACE request method.
  -?|-h|--help            This information.
  -V|--version            Display program version.
[root@centos179min webbench-1.5]#

webbench -c 并发数 -t 运行测试时间 URL

3、测试实例结果
当并发300时:
向http://test.domain.com/phpinfo.php发起300个线程请求,持续时间60秒
webbench -c 300 -t 60 http://test.domain.com/phpinfo.php
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.

Benchmarking: GET http://test.domain.com/phpinfo.php
300 clients, running 60 sec.

Speed=24525 pages/min, 20794612 bytes/sec. 
Requests: 24525 susceed, 0 failed.
速度:每秒钟响应请求数:24525 pages/min,每秒钟传输数据量20794612 bytes/sec.
返回数:24525次返回成功,0次返回失败

当并发1000时:
webbench -c 1000 -t 60 http://test.domain.com/phpinfo.php
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.

Benchmarking: GET http://test.domain.com/phpinfo.php
1000 clients, running 60 sec.

Speed=24920 pages/min, 21037312 bytes/sec.
Requests: 24833 susceed, 87 failed.

当并发1000时,已经显示有87个连接failed了,说明超负荷了。

备注:
1、压力测试工作应该放到产品上线之前进行
2、测试时尽量跨公网模拟正式环境进行
3、测试时并发应当由小逐渐加大,比如并发100时观察一下网站负载是多少、打开是否流程,并发200时又是多少、网站打开缓慢时并发是多少、网站打不开时并发又是多少

3.测试网站压力

[root@centos179min webbench-1.5]# ./webbench -c 200 -t 10 http://192.168.1.179/test.php
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.

Benchmarking: GET http://192.168.1.179/test.php
200 clients, running 10 sec.

Speed=58386 pages/min, 51328516 bytes/sec.    --每秒钟响应请求数:Speed=58386 pages/min,每秒钟传输数据量:51328516 bytes/sec

Requests: 9731 susceed, 0 failed.                      --10秒200个客户端请求没有失败

[root@centos179min webbench-1.5]# ./webbench -c 1000 -t 10 http://192.168.1.179/test.php
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.

Benchmarking: GET http://192.168.1.179/test.php
1000 clients, running 10 sec.

Speed=47916 pages/min, 42126676 bytes/sec.
Requests: 7986 susceed, 0 failed.                  --10秒1000个客户端请求也没有失败

[root@centos179min webbench-1.5]# ./webbench -c 2000 -t 10 http://192.168.1.179/test.php
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.

Benchmarking: GET http://192.168.1.179/test.php
2000 clients, running 10 sec.

Speed=50394 pages/min, 44303164 bytes/sec.
Requests: 8399 susceed, 0 failed.                    --10秒中内发2000个请求也没有失败

[root@centos179min webbench-1.5]# ./webbench -c 4000 -t 10 http://192.168.1.179/test.php
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.

Benchmarking: GET http://192.168.1.179/test.php
4000 clients, running 10 sec.

Speed=46644 pages/min, 40894852 bytes/sec.
Requests: 7749 susceed, 25 failed.              --10秒内4000客户端发送请求就有25个失败,证明10秒并发不超过4000,注nginx没有做过忧化
[root@centos179min webbench-1.5]#

WebBench安装及测试 http://www.linuxidc.com/Linux/2013-04/83586.htm

用WebBench测试网站负载 http://www.linuxidc.com/Linux/2013-03/80612.htm

网站压力测试工具 WebBench http://www.linuxidc.com/Linux/2013-01/77510.htm

服务器压力测试工具WebBench的安装和使用 http://www.linuxidc.com/Linux/2012-08/69400.htm

Linux下网站压力测试工具WebBench下载安装使用 http://www.linuxidc.com/Linux/2011-02/31995.htm

Linux中两款并发测试工具ab&WebBench http://www.linuxidc.com/Linux/2011-01/31392.htm

使用Nginx搭建WEB服务器 http://www.linuxidc.com/Linux/2013-09/89768.htm

搭建基于Linux6.3+Nginx1.2+PHP5+MySQL5.5的Web服务器全过程 http://www.linuxidc.com/Linux/2013-09/89692.htm

Nginx 的详细介绍请点这里
Nginx 的下载地址请点这里

本文永久更新链接地址http://www.linuxidc.com/Linux/2014-10/107611.htm

Nginx压力测试工具之WebBench的更多相关文章

  1. 推荐一个linux下的web压力测试工具神器webbench

    推荐一个linux下的web压力测试工具神器webbench2014-04-30 09:35:29   来源:   评论:0 点击:880 用多了apache的ab工具之后你就会发现ab存在很多问题, ...

  2. (总结)Web性能压力测试工具之WebBench详解

      PS:在运维工作中,压力测试是一项很重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验.但是,在压力测试中存在一个共性,那就是压力 ...

  3. CentOS 6.7平台nginx压力测试(ab/webbench)

    压力测试工具一:webbench 1.安装 wget http://home.tiscali.cz/~cz210552/distfiles/webbench-1.5.tar.gz tar zxvf w ...

  4. 网站压力测试工具之WebBench

    1 Web Bench简介 WebBench是有名的网站压力测试工具,由Lionbridge公司开发,最多可以模拟3万个并发连接去测试网站的负载能力. Webbech能测试处在相同硬件上,不同服务的性 ...

  5. Web性能压力测试工具之WebBench

    在运维工作中,压力测试是一项很重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验.但是,在压力测试中存在一个共性,那就是压力测试的结果 ...

  6. Web性能压力测试工具之WebBench详解

    PS:在运维工作中,压力测试是一项很重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验.但是,在压力测试中存在一个共性,那就是压力测试 ...

  7. web性能压力测试工具http_load/webbench/ad

    http_load 下载地址:http://www.acme.com/software/http_load/http_load-12mar2006.tar.gz 程序非常小,解压后也不到100K 居家 ...

  8. 三种web性能压力测试工具

    三种web性能压力测试工具http_load webbench ab小结 题记:压力和性能测试工具很多,下文讨论的是我觉得比较容易上手,用的比较多的三种 http_load 下载地址:http://w ...

  9. http压力测试工具及使用说明

    http压力测试工具及使用说明 转 说明:介绍几款简单.易使用http压测工具,便于研发同学,压测服务,明确服务临界值,寻找服务瓶颈点. 压测时候可重点以下指标,关注并发用户数.TPS(每秒事务数量) ...

随机推荐

  1. ubuntu16 tomcat7安装和编码修改

    有直接通过命令安装的,但是我还是喜欢把文件下载下来,然后自己配置. 1,下载tomcat7二进制文件 https://tomcat.apache.org/download-70.cgi 2,解压tom ...

  2. TF随笔-9

    计算累加 #!/usr/bin/env python2 # -*- coding: utf-8 -*-"""Created on Mon Jul 24 08:25:41 ...

  3. Gradle2.0用户指南翻译——第一章. 介绍

    翻译项目请关注Github上的地址:https://github.com/msdx/gradledoc本文翻译所在分支:https://github.com/msdx/gradledoc/tree/2 ...

  4. [置顶] Retrofit2 初印象?

    鄙人由于工作繁忙很久没写博客了还望大家谅解!之前csdn登不上,算了不说借口了,retrofit2相信已经很火了吧,而且上手也比较容易,之前可能大家都是用Volley,Okhttp.Okhttp3其实 ...

  5. String.prototype.getParm

    String.prototype.getParms=function(name){ var reg = new RegExp('(^|&)' + name + '=([^&]*)(&a ...

  6. python常用模块之configparser模块

    python常用模块之configparser 作用:解析配置文件 假设在当前目录下有这样一个conf.ini文件 [DEFAULT] ServerAliveInterval = 45 Compres ...

  7. Mysql Innodb 引擎优化 参数(innodb_buffer_pool_size)

    在mysql的学习过程中,要是不把一些基本概率弄的很清楚,难免显得过于不专业. 作用: 这个参数主要作用是缓存innodb表的索引,数据,插入数据时的缓冲 默认值:128M 专用mysql服务器设置的 ...

  8. GitHub https链接中输入账户和密码

    /********************************************************************** * GitHub https链接中输入账户和密码 * 说 ...

  9. 【剑指offer】不使用新变量,交换两个变量的值,C++实现

    # 题目 不使用新变量,交换两个变量的值. # 思路 方法一:使用加减法操作,交换两个变量的值. A = A+B B = A-B A = A-B 方法二:使用异或运算,交换两个变量的值 A = A^B ...

  10. appium python实例脚本1

    #coding=utf-8import os, time, unittestfrom appium import webdriver PATH = lambda p:os.path.abspath(o ...