The benchmark performance tests can be run without Onload
using the regular kernel network drivers. To do this remove the onload
part from the command line.
HTTP Connections with nginx
Run the nginx
application on system-2, increasing the number of file descriptors available:
[system-2]# ulimit -n 1000000 && nginx
Run multiple instances of the wrk
application on system-1, so there is the capacity to generate more connection requests than can be handled. A zero-byte file is requested, and the “Connection: close” header is passed to close the connection immediately:
[system-1]# for i in {1..3}; do taskset -c $i wrk -t 1 -c 50 -d 10s
-H 'Connection: close' http://system-2/0kb.bin & done
Each instance outputs its own results. Aggregating the results gives the following totals:
Requests/sec: 34431.98
Transfer/sec: 8.02MB
The server handles only 34431 connections per second (Requests/sec). This rate is greatly reduced compared to that achieved with Onload (see Connections with Onload above).