3 ms·
You could have a look at Reactive Java, node, golang, even nginx + openresty. Basically anything with an event loop and good non blocking IO support for client
by sytringy05 7y ago
You could have a look at Reactive Java, node, golang, even nginx + openresty.
Basically anything with an event loop and good non blocking IO support for client requests and you will get loads of traffic through without too much hassle.
Of course a lot of this really depends on what your app needs to do over and above handle HTTP requests and what sort of library support you get from language / framework X.
Java, for example, has some great reactive libraries, but any JDBC driver blocks (as it has to, enforced by the JDBC spec). There's a couple of non JDBC drivers that support non blocking IO, but they are still evolving.
It's a similar story with other languages, there's always something necessary that isn't quite there yet.
That said you can still squeeze vast performance out of the blocking IO things with a solid engineering base (Tomcat, IIS if you can stomach windows) you just hit the thread limits earlier and harder than with the non blocking stuff.