Как правило, протоколы с интенсивным использованием данных имеют тенденцию работать лучше с точки зрения необработанной пропускной способности с классическим блокирующим вводом / выводом по сравнению с NIO, если число потоков меньше 1000. По крайней мере, это, безусловно, имеет место с HTTP на стороне клиента основанный на (вероятно, несовершенном и, возможно, предвзятом) тесте HTTP, используемом Apache HttpClient [1]
Один может быть намного лучше использовать блокирующий HTTP-клиент с потоками, если число потоков умеренное (<250) </p>
Если вы абсолютно уверены, что вам нужен HTTP-клиент на базе NIO, я могу порекомендовать Jetty HTTP-клиент, который я лично считаю лучшим асинхронным HTTP-клиентом на данный момент.
[1] http://wiki.apache.org/HttpComponents/HttpClient3vsHttpClient4vsHttpCore