| Here's a quick attempt at the same thing in Java (although note that the command line format is different): https://gist.github.com/tomwhoiscontrary/b4888b86057c74a636c... The main takeaway is that the JDK's built-in web server is poor: * There is no way to configure timeouts * Filters have to be added to each handler separately, by mucking with its filter list * Filters have to extend an abstract class with two methods (one totally pointless), so you can't use lambdas for them * Handlers use a simple string prefix match, so a request for "/healthzone" will hit the health handler * The stop method always blocks for the specified timeout, and never returns early as the docs promise (IME) Other minor irritations: * There is no method to parse an InetSocketAddress from a string * Java's support for handling clean process shutdown is not great; i think there's some sort of race between the shutdown hook and the logging system getting shut down, so you never see the "Server stopped" message |
https://twitter.github.io/finagle/guide/Quickstart.html