Apache Hello World Benchmarks is a benchmarking tool that seeks to give a sense of Web application execution speed on various software platforms running under the Apache Web server.
Benchmarks can vary greatly from system to system, so this tool allows one to get numbers on one's own platform. Applications tested include mod_perl, mod_php, Tomcat, and Apache::ASP, with over 62 benchmarks in all.
Hello World 2000 ( 2000 )
The 2000 benchmark tries to emulate a heavy web page template. It is typically 3K+ in program length that results in output of over 20K. While this does not properly reflect any web application's speed of back end business logic execution, it does show a template heavy request with some application logic and loops, some HTTP parameter passing, and much variable interpolation in the output stream.
Hello World ( hello )
The Hello World benchmark merely prints "Hello World" and as such is a good test for the fastest a web page could ever run under the given web application environment. For historical reasons, the benchmarks are written to print "Hello" and then add to the output World as a raw string.
HelloDB ( hellodb )
The HelloDB benchmark merely queries the database for the string "Hello World", and as such represents the fastest a web application can process a request when talking to a database. This is a new benchmark with only MySQL supported for now, but more environments and databases will be added over time.
XSLT Big ( xsltbig )
This benchmark hits an XSLT rendering engine hard with 18K+ XML being transformed with a 1K+ XSL stylesheet for over 20K output. Though XSLT is generally slow, many applications will use XSLT caching to speed up response times. This benchmark should emulate well a real world XSLT usage scenario, with perhaps the XSL itself being too trivial.
Hello XSLT ( xslt )
Like the Hello World benchmark, the XSLT version just outputs "Hello World", or the closest we can get when doing XSLT, so it too demonstrates the fastest an application can render a page with XSLT. Benchmarks should be similarly configured between xsltbig and xslt, so a slow caching layer that benefits the former might slow down this benchmark.