Как уже упоминалось, 10.000 клиентов не легко. Для java NIO (возможно, дополненный отдельным пулом потоков для обработки каждого запроса без блокировки потока NIO) является обычным способом обработки большого количества клиентов.
Как уже упоминалось, в зависимости от реализации потоки могут фактически масштабироваться, но это во многом зависит от степени взаимодействия между клиентскими соединениями. Массивные потоки работают с большей вероятностью, если между потоками мало синхронизации.
Тем не менее, NIO, как известно, трудно получить 100% правильно, когда вы в первый раз его внедрите.
Я бы порекомендовал либо попробовать, либо хотя бы посмотреть на источник для библиотеки Naga NIO по адресу naga.googlecode.com . База кода для библиотеки мала по сравнению с большинством других платформ NIO. Вы сможете быстро выполнить тест, чтобы увидеть, сможете ли вы запустить и запустить 10.000 клиентов.
(Источник Naga также может быть свободно модифицирован или скопирован без указания автора)