Можно ли включить рабочий модуль в стандартную вертикаль?

Используя vert.x в Java, я хотел бы использовать рабочий модуль (EBean ORM) в стандартном модуле (цикл событий), объявив "include" в mod.json или, лучше, установив модуль ebean как системный модуль.

Будет ли это блокировать цикл событий, и поэтому я должен использовать вместо этого только шину событий?


person user2054758    schedule 31.01.2014    source источник


Ответы (1)


Если ваш модуль имеет код блокировки (с использованием API-интерфейсов блокировки или выполнения большого количества вычислений), вы не должны использовать его в цикле событий. Золотое правило: никогда не блокируйте цикл событий. В противном случае ваше приложение не будет реагировать.

Даже если код в вашем модуле неблокирующий, я бы попытался использовать стандартный модульный способ: вы можете намного проще повторно использовать его на разных языках, и если вы решите изменить детали внутренней реализации в будущем, вы не сломаете ваш пользовательский код так же прост, как у вас есть интерфейс JSON через шину событий.

person Narigo    schedule 17.02.2014