Рекомендовать службу очереди сообщений с открытым исходным кодом
Кто-нибудь может порекомендовать мне очередь сообщений с открытым исходным кодом? как JMS, gearmand,zeroMq,Amazon SQS. Tt лучше всего удовлетворить следующие пункты (не обязательно):
- распределенный и масштабируемый.
- поддерживается асинхронное сообщение.
- лучше всего поддерживать паб / подписаться
- высокая доступность, лучше никогда не опускать сообщения.
- высокая производительность
- лучше всего поддерживать php sdk и mq-сервер, разработанный c/ C++.
- легко использовать
- Проект активен.
большое спасибо!
3 ответа
Классические брокеры:
- Apache ActiveMQ - это реализация JMS-брокера от Apache. Написано на Java.
- RabbitMQ - популярная реализация брокера AMQP, написанная на Erlang.
- StormMQ - брокер AMQP, написанный на Java. Замена для RabbitMQ (не требует смены клиентов).
- Apache Qpid - брокер AMQP, еще одна альтернатива RabbitMQ. Написано на Java и C++.
Выше также предоставьте HTTP (REST API), XMPP и STOMP транспорты.
Другие вещи:
- ZeroMQ - это не брокер, а библиотека. Позволяет использовать как брокерскую, так и брокерскую архитектуру. Очень легкий, очень универсальный и очень быстрый. Написано на C++.
- Amazon SQS - не хватает функций других. Неудобные ограничения, такие как сообщения, не гарантируют, что они будут в порядке или доставлены только один раз. Нет паб / саб архитектуры. Ограничено для использования в сочетании с AWS. Довольно высокая задержка.
- распределенный и масштабируемый. - все вышеперечисленное
- поддерживается асинхронное сообщение. - все вышеперечисленное
- Лучше всего поддерживать паб / подписаться - все, кроме SQS
- высокая доступность, лучше никогда не опускать сообщения. - все, некоторые в зависимости от настроек
- высокая производительность - все с точки зрения пропускной способности, некоторые с точки зрения задержки
- Лучше всего поддерживать php SDK, - все вышеперечисленное, в PHP встроены клиенты AMQP и STOMP, в ZMQ и SQS есть определенные привязки.
и сервер mq, разработанный c/ C++ - только ZeroMQ, но на самом деле это не сервер- прост в использовании - все вышеперечисленное
- Проект активен. - все вышеперечисленное