Search code examples
web-applicationsnetworkinghigh-loadlow-latency

lowest latency, least overhead app server?


I'm designing an application which will have a network interface for feeding out large numbers of very small metadata requests. The application code itself is very fast, basically looking up data cached in memory and sending it to the client.

What's the absolute lowest latency I can get for a network application server running on a linux box? This will be an internal app running on gigE with no authentication. Any language/framework considered, with a preference for C, C++, or Python. Likewise for protocol, although HTTP would be nice.


Solution

  • For a small, fast HTTP server, you could take a look at gatling. Key features:

    • free, opensource
    • small, fast, scalable, comes with anti-DOS features
    • speaks HTTP, HTTPS/TLS, FTP, IPV6, understands SMB
    • supports SCGI and FastCGI and can thus be used to run ELF binaries or scripts
    • transparent content negotiation (serves gz if the client supports it)
    • makes use of OS-specific shortcuts to improve performance
    • several benchmarks included