Implement the server side with asynchronous IO in Java. Most of the helpers are agnostic and can be used for both synchronous and asynchronous IO. The server should be able to serve more than one request over the same connection.
The SimplisticSocketHandler cannot do that, because it uses synchronous IO with a single thread. That means it couldn't wait for a second request on an existing connection, and for a new connection on the server socket, at the same time. That's easily done with asynchronous IO.
Implement the server side with asynchronous IO in Java. Most of the helpers are agnostic and can be used for both synchronous and asynchronous IO. The server should be able to serve more than one request over the same connection. The
SimplisticSocketHandler
cannot do that, because it uses synchronous IO with a single thread. That means it couldn't wait for a second request on an existing connection, and for a new connection on the server socket, at the same time. That's easily done with asynchronous IO.