HOME

TheInfoList



OR:

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


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 Load testing is the process of putting demand on a structure or system and measuring its response. Software load testing The term ''load testing'' is used in different ways in the professional software testing community. ''Load testing'' gene ...
(stress/performance testing) a web server can be performed using automation/analysis tools such as: *
Apache JMeter Apache JMeter is an Apache project that can be used as a load testing tool for analyzing and measuring the performance of a variety of services, with a focus on web applications. JMeter can be used as a unit-test tool for JDBC database connectio ...
, an open-source Java load testing tool * ApacheBench (or ab), a command line program bundled with
Apache HTTP Server The Apache HTTP Server ( ) is a free and open-source cross-platform web server software, released under the terms of Apache License 2.0. Apache is developed and maintained by an open community of developers under the auspices of the Apache Sof ...
* Httperf, a command line program originally developed at
HP Labs HP Labs is the exploratory and advanced research group for HP Inc. HP Labs' headquarters is in Palo Alto, California and the group has research and development facilities in Bristol, UK. The development of programmable desktop calculators, ink ...
* Siege, an open-source web-server load testing and benchmarking tool * Curl-loader, a
software performance testing In software quality assurance, performance testing is in general a testing practice performed to determine how a system performs in terms of responsiveness and stability under a particular workload. It can also serve to investigate, measure, val ...
open-source tool * OpenSTA, a GUI-based utility for Microsoft Windows-based operating systems * Wrk, an open-source C load testing tool


Web application benchmarks

Web application benchmarks measure the performance of
application server An application server is a server that hosts applications or software that delivers a business application through a communication protocol. An application server framework is a service layer model. It includes software components available to a ...
s and database servers used to host web applications.
TPC-W TPC-W was a web server and database performance benchmark, proposed by Transaction Processing Performance Council. This benchmark defined the complete Web-based shop for searching, browsing and ordering books. The system under testing needed to pr ...
was a common benchmark emulating an online bookstore with synthetic workload generation.


References

{{Reflist


External links

*Microsoft'
patterns & practices Performance Testing Guidance for Web ApplicationsStress tools to test your Web server
at Microsoft's knowledge base
Open Source Performance Testing toolsHTTP(S) benchmark tools, testing/debugging
Benchmarks (computing)