Я ищу быструю и надежную систему очередей, которая потенциально может быть распределена между машинами. Платформа - Linux. Открытый исходный код предпочтительнее.
И RabbitMQ, и ZeroMQ выглядят хорошо, но у меня нет опыта работы с этими или любыми другими системами очередей. Можете ли вы указать мне правильное направление?
ZeroMQ и RabbitMQ поддерживают открытый протокол обмена сообщениями AMQP. Преимущество AMQP в том, что он разработан как высоконадежная и открытая альтернатива двум коммерческим очередям сообщений (IBM и Tibco).
Однако ZeroMQ не поддерживает сохранение сообщений при сбоях и перезагрузках. Остается RabbitMQ. (При этом, если вам не нужна настойчивость, ZeroMQ чертовски интересен… невероятно низкая задержка и гибкие топологии).
Некоторое время назад я провел очень простую оценку ZeroMQ, RabbitMQ, MSMQ и ActiveMQ. http://mikehadlow.blogspot.com/2011/04/message-queue-shootout.html
Подробное описание здесь. Но, пожалуйста, не полагайтесь на это на 100%. 3 вещи имеют 3 цели.
Примечания к оценке очереди сообщений
ZeroMQ подходит для быстрого распространения данных в реальном времени на основе транзакций. Высокая надежность сообщений лучше всего с RabbitMQ. Промежуточное решение - ActiveMQ
Мы провели оценку различных подходов к обмену сообщениями.
BoostASIO (сокеты), ZeroMQ (облегченная структура) и OpenDDS (полнофункциональная реализация спецификации OMG DDS).
Документ с описанием результатов можно найти Вот. Результаты не такие, как вы могли ожидать.
Раскрытие информации: постер является генеральным директором компании, проводившей оценку, и продукт компании включен в оценку.