Benchmarks conducted using Siege with default settings (10 users, 25 times each, delay of 3) using a single URL (index.html from the top of ‘without’)
publicfile and thttpd were tested using their default configurations. kpf is designed to keep the load down on the user’s machine - it’s not supposed to be a fast web server, so I manually removed bandwidth throttling and concurrent connection count limiting from the code to get a better idea of the raw speed.
| Server | Elapsed time | Data transferred | Response time | Transaction rate | Throughput | Concurrency |
|---|---|---|---|---|---|---|
| kpf | 61.38 | 163000 | 0.05 | 4.07 | 2655.59 | 0.22 |
| publicfile | 51.39 | 178500 | 0.00 | 4.86 | 3473.44 | 0.20 |
| thttpd | 53.34 | 163000 | 0.00 | 4.69 | 3055.87 | 0.00 |
It appears that kpf is not faster than publicfile or thttpd, but then I didn’t expect that. It’s certainly fast _enough_ though. So long as it doesn’t affect transfer time for large files, speed isn’t really an issue. Next I need to test transfer time to ensure no stalling is happening. This really needs the various throttles enabling though, otherwise results won’t be much good.