Grails: плагин rabbitmq против плагина rabbitmq-tasks против API ядра событий ядра платформы

Ранее я задавал вопрос о задержке обработки события: Grails не основанная на времени очередь. Я начал использовать rabbitmq-plugin: http://grails.org/plugin/rabbitmq, и все прошло замечательно.

Теперь я вижу, что у меня есть несколько новых опций, и я всегда стараюсь связываться с хорошей вещью. Существует новый плагин, плагин rabbitmq-tasks, и я не думаю, что полностью понимаю новые функции, которые он привносит в таблицу: http://grails.org/plugin/rabbitmq-tasks. Кроме того, новый плагин платформы Grails Core, похоже, имеет совершенно другой подход, вращающийся вокруг grails.events http://grailsrocks.github.com/grails-platform-core/guide/events.html.

Каковы некоторые из важных различий между тремя инструментами для обработки задач? Какие соображения могут быть важны при выборе одного над другим?

1 ответ

Я также пробую Event Bus платформы-ядра. На самом деле это хороший вопрос, и я думаю, что вы уже нашли ответ.

Поправьте меня если я ошибаюсь!

Если я правильно понимаю шину событий платформы-ядра, различия в том, что шина событий работает только локально и делегирует событие слушателю на том же хосте. RabbitMQ - это система обмена сообщениями. Таким образом, у вас есть сервер, который ставит в очередь сообщения и делегирует их слушателю, даже если он находится на другом хосте. Для распределенных систем удобнее использовать RabbitMQ, потому что с Event Bus он не будет работать. Вы будете использовать шину событий для разъединения ваших модулей / компонентов.

Другие вопросы по тегам