0.9.0 GPL (GNU General Public License)    
2.6/5 15
httperf is a tool for measuring web server performance.




httperf is a software for measuring web server performance. It provides a flexible facility for generating various HTTP workloads and for measuring server performance.

The focus of httperf is not on implementing one particular benchmark but on providing a robust, high-performance tool that facilitates the construction of both micro- and macro-level benchmarks.

The three distinguishing characteristics of httperf are its robustness, which includes the ability to generate and sustain server overload, support for the HTTP/1.1 and SSL protocols, and its extensibility to new workload generators and performance measurements.

Building httperf

This release of httperf is using the standard GNU configuration mechanism. The following steps can be used to build it:

$ mkdir build
$ cd build
$ SRCDIR/configure
$ make
$ make install

In this example, SRCDIR refers to the httperf source directory. The last step may have to be executed as "root".

To build httperf with debug support turned on, invoke configure with option "--enable-debug".

By default, the httperf binary is installed in /usr/local/bin/httperf and the man-page is installed in /usr/local/man/man1/httperf. You can change these defaults by passing appropriate options to the "configure" script. See "configure --help" for details.

This release of httperf has preliminary SSL support. To enable it, you need to have OpenSSL ( already installed on your system. The configure script assumes that the OpenSSH header files and libraries can be found in standard locations (e.g., /usr/include and /usr/lib). If the files are in a different place, you need to tell the configure script where to find them. This can be done by setting environment variables CPPFLAGS and LDFLAGS before invoking "configure". For example, if the SSL header files are installed in /usr/local/ssl/include and the SSL libraries are installed in /usr/local/ssl/lib, then the environment variables should
be set like this:


With these settings in place, "configure" can be invoked as usual and SSL should now be found. If SSL has been detected, the following three checks should be answered with "yes":

checking for main in -lcrypto... yes
checking for SSL_version in -lssl... yes
checking for openssl/ssl.h... yes

Note: you may have to delete "config.cache" to ensure that "configure" re-evaluates those checks after changing the settings of the environment variables.

What's New in This Release:

This release uses snprintf instead of the less secure sprintf, updates the build system, fixes manpages, and adds various other improvements and bugfixes.
Last updated on March 4th, 2008

0 User reviews so far.