Lowest latency, lowest service application server?

I am developing an application that will have a network interface for submitting a large number of very small metadata requests. The application code itself is very fast, basically looking for the data stored in memory and sending it to the client.

What is the absolute lowest latency I can get for a Network Application Server running in a Linux box? This will be an internal application running on gigE without authentication. Any language / framework is considered with a preference for C, C ++ or Python. Likewise for the protocol, although HTTP would be nice.

+2


source to share


4 answers


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



  • free, open source
  • small, fast, scalable, comes with anti-DOS features.
  • speaks HTTP, HTTPS / TLS, FTP, IPV6, understands SMB
  • supports SCGI and FastCGI and therefore can be used to run binaries or ELF scripts.
  • transparent content negotiation (serves as gz if client supports it)
  • uses OS-specific shortcuts to improve performance
  • multiple benchmarks included
+1


source


If it suits your needs consider C or C ++ and zmq



For such an application, though, language won't be the biggest factor in terms of performance. If you need to support a large number of clients, the programming model will be the deciding factor, thread by client (slower) or asynchronous / non-blocking (faster).

+1


source


Facebook recently got its memcached configured to handle 200,000 requests per second with a 173 microsecond latency .

You can read the source code to see how they did it. One of their biggest changes was the removal of TCP and the use of UDP instead.

+1


source


G-WAN offers C and C ++ scripts and has been tested with nearly 800,000 requests per second .

I don't know anything faster and have tested several other servers .

+1


source







All Articles