Вполне возможно оверкилл
Но мне интересно разобраться, чтобы знать что к чему в будущем
Примерно так:
nio на коллбэках. JVM под капотом держит небольшой тредпул, который возится с ожиданием файлов/сети и дёргает ваши коллбэки.
nio2 - через polling, вы сами рулите тредами, которые подёргивают JVM за селекторы на тему "ну чо там, прочиталося уже? а теперь? а щас? а ещё нет?" - по идее лучше ложится на корутины, но в рукопашную это всё писать, наверное, не стоит