在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.命令详解
# ./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.
3.测试网站压力
# ./webbench -c 200 -t 10 http://192.168.1.10/test.php
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http://192.168.1.10/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个客户端请求没有失败
# ./webbench -c 1000 -t 10 http://192.168.1.10/test.php
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http://192.168.1.10/test.php
1000 clients, running 10 sec.
Speed=47916 pages/min, 42126676 bytes/sec.
Requests: 7986 susceed, 0 failed. --10秒1000个客户端请求也没有失败
# ./webbench -c 2000 -t 10 http://192.168.1.10/test.php
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http://192.168.1.10/test.php
2000 clients, running 10 sec.
Speed=50394 pages/min, 44303164 bytes/sec.
Requests: 8399 susceed, 0 failed. --10秒中内发2000个请求也没有失败
# ./webbench -c 4000 -t 10 http://192.168.1.10/test.php
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http://192.168.1.10/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没有做过忧化