Использование Redis для Pub Sub.Преимущества / недостатки по сравнению с RabbitMQ - PullRequest
11 голосов
/ 12 сентября 2011

Наше требование очень простое. Отправлять сообщения пользователям, подписавшимся на тему. Нам нужна наша система обмена сообщениями, чтобы иметь возможность поддерживать миллионы тем и, возможно, миллионы подписчиков на любую тему почти в реальном времени. Наше приложение построено на Java.

Мы почти определились с RabbitMQ из-за поддержки сообщества, документации и функций (возможно, она предоставит все, что нам нужно). Но я очень склонен к использованию Redis, потому что он выглядит многообещающе и легко. Честно говоря, у меня ограниченное понимание Redis как системы обмена сообщениями, но, глядя на растущее число компаний, использующих его в качестве очередей (с Ruby Resque), я хочу знать, есть ли такое предложение, как Resque в Java, и каковы его преимущества или преимущества. недостатки использования Redis в качестве MQ над RabbitMQ.

1 Ответ

8 голосов
/ 13 сентября 2011

RabbitMQ поддерживает кластеризацию и теперь имеет активные / активные очереди High Available (Доступно) с высокой доступностью, что позволяет расширить возможности масштабирования и повысить доступность по сравнению с Redis «из коробки».

RabbitMQ дает вам больший контроль над всем, от пользователей / разрешений обменов / очередей, до долговечности определенного обмена или очереди (диск или память), до гарантий доставки (транзакции, Publisher).подтверждает).

Это также обеспечивает большую гибкость и возможности для топологий (разветвление, тема, прямая передача) и маршрутизация в несколько очередей, RPC с личными очередями и ответами и т. Д.

...