Предостережения по использованию EventBus от Guava - PullRequest
3 голосов
/ 10 июля 2019

Из документов

Это не универсальная система публикации и подписки, а также не предназначена для межпроцессного взаимодействия

Чтоони имеют в виду, что это не универсальная система публикации-подписки?

Ответы [ 2 ]

1 голос
/ 10 июля 2019

Лучше объяснить в нижней части на странице EventBusExplained :

Почему я не могу сделатьс EventBus?

EventBus разработан, чтобы действительно, очень хорошо справляться с большим классом вариантов использования .Мы предпочитаем ударять ногтем по голове в большинстве случаев, а не прилично делать во всех случаях.

Кроме того, делает EventBus расширяемым - и делает его полезным и продуктивным для расширения, в то же время все ещепозволяя себе добавлять в основной EventBus API дополнения, которые не конфликтуют ни с одним из ваших расширений - - чрезвычайно сложная проблема .

Если вам действительно очень нужна волшебная вещь X,что EventBus в настоящее время не может предоставить, вы должны подать проблему и затем разработать собственную альтернативу.

(Выделение мое).

Сравните EventBus с Kafka, например -последний гораздо более расширяемый, но и более сложный.

1 голос
/ 10 июля 2019

Насколько я понимаю, это только в JVM, публикация / подписка обычно происходит между процессами, находящимися в потенциально разных местах: например, когда одна JVM общается с другим, предположим, что одно событие публикации приложения Spring должно использоваться другим приложением Spring.Проживание в совершенно разных местах.

...