Puneet Varma (Editor)

Web server benchmarking

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit

Web server benchmarking is the process of estimating a web server performance in order to find if the server can serve sufficiently high workload.

Contents

Key parameters

The performance is usually measured in terms of:

  • Number of requests that can be served per second (depending on the type of request, etc.);
  • Latency response time in milliseconds for each new connection or request;
  • Throughput in bytes per second (depending on file size, cached or not cached content, available network bandwidth, etc.).
  • The measurements must be performed under a varying load of clients and requests per client.

    Tools for benchmarking

    Load testing (stress/performance testing) a web server can be performed using automation/analysis tools such as:

  • ApacheBench (or ab), a command line program bundled with Apache HTTP Server
  • Siege, an open-source Nginx web-server load testing and benchmarking tool
  • Apache JMeter, an open-source Java load testing tool
  • Curl-loader, a software performance testing open-source tool
  • Httperf, a command line program originally developed at HP Labs
  • OpenSTA, a GUI-based utility for Microsoft Windows-based operating systems
  • Web application benchmarks

    Web application benchmarks measure the performance of application servers and database servers used to host web applications. TPC-W was a common benchmark emulating an online bookstore with synthetic workload generation.

    References

    Web server benchmarking Wikipedia