On 24 Apr 2012, at 09:25, Mircea Markus wrote:
The reason I ask is that at some point we should look at not only an NIO impl (I know you had one that you experimented with some while back) but also a JDK7 NIO2 one, and benchmark the three.
Agreed. I'd expect an NIO/NIO2 client to handle much better the async requests from client to the server than the current IO client which is optimised for sync operations.
I was just wondering because the entire stack could be async, all the way from API call to network transport, and the network future appropriately wrapped and returned as a return value to the client. If a sync API is called, just delegate to the async operation and call get() once on the compound future. Should make for a very clean and high performance client.