使用webbench和apachbench进行压力测试

Posted autofelix

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用webbench和apachbench进行压力测试相关的知识,希望对你有一定的参考价值。

〝 古人学问遗无力,少壮功夫老始成 〞

很多小伙伴在做完一个网站之后,不知道如何做压力测试,不知道自己网站的并发承受极限在哪里,这里教大家两种最常用的两种压力测试。如果这篇文章能给你带来一点帮助,希望给飞兔小哥哥一键三连,表示支持,谢谢各位小伙伴们。

目录

一、webbench测试之安装webbench

二、webbench测试之使用

三、webbench测试之结果分析

四、apachebench压力测试

五、apachebench测试之结果分析


一、webbench测试之安装webbench

  • 首先需要安装webbench的依赖
  • 再安装webbench服务
# 安装依赖
yum install ctags

# 安装服务包
wget http://www.ha97.com/code/webbench-1.5.tar.gz

# 解压
tar -zxvf webbench-1.5.tar.gz

# 进入工作目录
cd webbench-1.5

# 编译
make && make install

二、webbench测试之使用

  • 使用命令:webbench -c 并发数 -t 请求时间 压力测试的网址
  • 如果我要测试百度在30秒内并发数1000情况下的压力,命令如下
webbench -c 1000 -t 30 https://www.baidu.com

三、webbench测试之结果分析

  • 在运行完以上命令后,可以看出网站负载的具体情况了
  • 主要看failed数量,看请求有多少失败即可
Speed=24920 pages/min, 21037312 bytes/sec.
Requests: 24833 susceed, 87 failed.

四、apachebench压力测试

  • 只要安装了apache服务,系统将会自带ab测试
  • 使用命令:ab -c 并发数 -n 请求总数 压力测试网站
  • 如果我要测试百度最高并发10的情况下有100个请求过来的情况下,命令如下
ab -c 10 -n 100 https://www.baidu.com

五、apachebench测试之结果分析

  • 主要看Failed requests的数值,如果不为0则压力超过负荷了
Server Software:        nginx/1.10.2           #服务器类型
Server Hostname:        www.baidu.com          #域名
Server Port:            80					   #端口

Document Path:          /					   #根目录
Document Length:        10 bytes

Concurrency Level:      10
Time taken for tests:   2.677 seconds          #测试时间
Complete requests:      100                    #完成的请求数量
Failed requests:        0                      #失败的请求
Total transferred:      17200 bytes
html transferred:       1000 bytes
Requests per second:    37.36 [#/sec] (mean)
Time per request:       267.700 [ms] (mean)
Time per request:       26.770 [ms] (mean, across all concurrent requests)
Transfer rate:          6.27 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        7   26 140.0     10    1411
Processing:    11  231 414.8     93    1650
Waiting:       11  196 412.7     68    1637
Total:         20  257 434.9    104    1666

Percentage of the requests served within a certain time (ms)
  50%    104       #50%的请求处理时间在100毫秒左右
  66%    140
  75%    146
  80%    152
  90%   1516
  95%   1538
  98%   1548
  99%   1666
 100%   1666 (longest request)

以上是关于使用webbench和apachbench进行压力测试的主要内容,如果未能解决你的问题,请参考以下文章

使用webbench和apachbench进行压力测试

Webbench进行网站压力测试

[Linux 高并发服务器]使用webbench对HTTP服务器进行压力测试

webbench进行压力测试

webbench进行压力测试

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