Если это реальное время, то вы абсолютно хотите, чтобы ваши сообщения были поддержаны очередью, чтобы вы могли доказать временную логику в этой очереди.Это то, что дает вам nio / io-creation-ports / async.Если вы используете синхронное программирование, то вы тратите впустую ваш ЦП, копируя данные из ОЗУ на сетевую карту.
Более того, это означает, что ваш сервер абсолютно однопоточный.У вас может быть один поток даже с асинхронным доступом, но вы все равно сможете обслуживать тысячи запросов.
Скажем, например, что клиент хотел выполнить атаку DOS.Он подключится и отправит один байт данных.Ваше приложение теперь не сможет получать дальнейшие команды для тайм-аута этого соединения, которое может быть довольно большим.При использовании async вы получите ACK-пакет обратно, но ваш код не будет ожидать полной передачи.