В большинстве веб-приложений, построенных в vertx, я видел, что в одном микросервисе люди создают две версии.
- Один из них - это остальная часть для обработки HTTP-запросов.
- Другой - это соединение с базой данных.
Всякий раз, когда есть какой-либо запрос api, вершина HTTP связывается с вершиной dao через шину событий.
Но учитывая, что вершина однопоточная, в чем преимущество создания здесь двух разных вершин. Были бы ненужные накладные расходы на связь по шине событий, тогда как я могу создать только одну вертикаль, которая обрабатывает как отдых, так и ввод-вывод.
Я могу понять случай наличия отдельной рабочей вертикали на случай блокировки звонков. Но в случае неблокирования, вызовы ввода-вывода, каковы его варианты использования?