Web server performance benchmark for FREE

Sometimes you need to find out what is average response time of your website. Such information is very useful and can lead you to optimize and tune your web-server for better performance. In the article we will introduce you possibilities how to make benchmark of your web-server for free.

1. ApacheBench

AB is a tool for benchmarking your Apache Hypertext Transfer Protocol (HTTP) server. It is designed to give you an impression of how your current Apache installation performs. This especially shows you how many requests per second your Apache installation is capable of serving.

Refresh the package database.

sudo apt-get update

 Install the apache2-utils package to get access to ApacheBench.

sudo apt-get install apache2-utils

Now you are ready to run benchmark. To isolate any network latency, it is the best idea to run it locally on web-server you want to test. Let’s see how it performs for 5000 requests with a concurrency of 500.

 ab -n 5000 -c 500 http://localhost:80/
AB benchmark tool

AB benchmark tool

As you can see above, web-server was able to handle 5000 request in 25.905 seconds and 193.01 requests per 1 second.

2. Siege

Siege is an HTTP load testing and benchmarking utility. It has a similar interface to ab, which will make transitioning to the tool almost seamless. Also, instead of testing against a single URL, Siege allows you to test against multiple. This allows for a more real-world simulation of how a user would use your system.

Refresh the package database.

sudo apt-get update

So, lets install Siege.

sudo apt-get install siege

That was easy, apt-get will resolve dependencies for you so if everything’s gone well you should be able to get stuck right in, lets say we’ve got a WordPress instance under localhost that we want to test, simply run this command:

siege -c 5 -b -t30s 'http://localhost'

Here’s a quick explanation of the options we’ve used above:

  • -c 5 – run with five concurrent requests
  • -b – benchmark mode
  • -t30s – time, run for 30 seconds
  • http://localhost – the target of the benchmark
Siege benchmark tool

Siege benchmark tool

In the result, server has 100% availability and was able to serve 247.01 transaction/sec.

READ ALSO:  How to find out TOP talkers in your network

3. jMeter

jMeter is an Open Source testing software. It is 100% pure Java application for load and performance testing. jMeter is designed to cover categories of tests like load, functional, performance, regression, etc., and it requires JDK 5 or higher.

Stefano Mazzocchi of the Apache Software Foundation was the original developer of JMeter. He wrote it primarily to test the performance of Apache JServ (now called as Apache Tomcat project). Apache later redesigned JMeter to enhance the GUI and to add functional testing capabilities.

JMeter is a Java desktop application with a graphical interface that uses the Swing graphical API. It can therefore run on any environment / workstation that accepts a Java virtual machine, for example − Windows, Linux, Mac, etc.

Example of jMeter GUI

Example of jMeter GUI

As it is quite complex tool, with many functions, you can find detailed tutorial how to use it here.
You can download jMeter official tool here.

4. Pingdom Website Speed Test

One of the online tools which can be used for online benchmark and provide useful information. You can specify website you want to test and as results you can obtain load time, response code, content size, file requests etc. Feel free to use it here.

Pingdom online benchmark tool

Pingdom online benchmark tool


Beware there are many free tools related with website (web-server) benchmark. Just use google and you can find many variations. As web administrator you should always pay attention to performance of your website. The best approach is to make benchmark periodically and try to optimize web-server for the best results. Good luck!

READ ALSO:  How to make SOCKS proxy server by using Raspberry Pi