Web Bench is a very simple tool for benchmarking WWW or proxy servers. This benchmark is not very realistic, but it can test if your HTTPD can really handle so many clients at once without taking your machine down.

https://github.com/tamlok/webbench

Install

Command lists:

  • wget https://github.com/51sec/WebBench/raw/master/webbench-1.5.tar.gz
  • tar zxvf webbench-1.5.tar.gz
  • cd webbench-1.5
  • make && make install

If you met make command not found error, you can issue following command to install it.

  •  apt install make

If you have following error, then you might need to install gcc:

cc -Wall -ggdb -W -O   -c -o webbench.o webbench.c
make: cc: Command not found
make: *** [webbench.o] Error 127

  • yum install gcc
  • [root@centos-1-test webbench-1.5]# make && make install

cc -Wall -ggdb -W -O   -c -o webbench.o webbench.c
webbench.c: In function ‘alarm_handler’:
webbench.c:77:31: warning: unused parameter ‘signal’ [-Wunused-parameter]
 static void alarm_handler(int signal)
                               ^
cc -Wall -ggdb -W -O  -o webbench webbench.o
ctags *.c
/bin/sh: ctags: command not found
make: [tags] Error 127 (ignored)
install -s webbench /usr/local/bin
install -m 644 webbench.1 /usr/local/man/man1
install: cannot create regular file ‘/usr/local/man/man1’: No such file or directory
make: *** [install] Error 1

  • yum install ctags
  • [root@centos-1-test webbench-1.5]# make && make install

ctags *.c
install -s webbench /usr/local/bin
install -m 644 webbench.1 /usr/local/man/man1
install: cannot create regular file ‘/usr/local/man/man1’: No such file or directory
make: *** [install] Error 1

  • cd /usr/local
  • mkdir man
  • cd man
  • mkdir man1
  • cd /root
  • make && make install

Usage

[root@centos-1-test webbench-1.5]# ./webbench
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@centos-1-test webbench-1.5]# ./webbench -c 500 -t 30 http://google.com/
Webbench – Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.

Benchmarking: GET http://google.com/
500 clients, running 30 sec.

Speed=15554 pages/min, 136959 bytes/sec.
Requests: 7777 susceed, 0 failed.
[root@centos-1-test webbench-1.5]#

By Jonny

Leave a Reply