Pathological test server designed to reproduce bad TCP accept() performance under Xen
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Simple pathological test server designed to reproduce bad TCP accept() performance. Often observed in virtualized servers (Xen among others).

There's a Server Fault question asked about this particular topic, see:

To run this test:

  1. Install Java and Apache Bench
  2. Download the JAR from the downloads section
  3. Run java -server -jar tcp-accept-server-1.0.0.jar
  4. Warm up the JIT with keep-alive on ab -n 100000 -c 10 -k
  5. Execute the test
    ab -n 100000 -c 20
    On a modern, decent machine you should see +25000 req/s. But on a virtualized server (Xen) this always is below 10k req/s.

Some more performance numbers regarding this behavior can be found at (uses netperf instead)