Содержание

Описание

RabbitMQ — отличное решение, если вы обрабатываете относительно немного сообщений, они небольшие и вам не важен порядок их доставки.

Программный брокер сообщений на основе стандарта AMQP, написанный на языке Erlang

Компоненты

Mnesia - распределённая СУБД реального времени

Сервер с HTTP и прочими библиотеками

Горизонтальное масштабировние

Оправитель - Puplisher

отправляет сообщение на

Обменники - exchange

отправляют в др обменники и очереди

При получении сообщения - отправляет сообщение отправителям

Получатель - consumers

Поддерживает постоянное TCP соединение и объевляет какую очередь читает

Rebbit пушит сообщения получателям

Получатели отправляют подтверждение успех/ошибка

После получения - сообщение удаляется из очереди

Гарантии доставки

  • Как минимум одна доставка

  • Как максимум однократная доставка

Модель доставки

Проталкивание - кролик сам отправляет сообщения

push

Очередь FIFO

QoS - Можно настроить ограничение на кол-во неподтверждённых сообщений

Чуть быстрее отправляет сообщения кафки

Умный сервер - Тупой клиент

Возможна репликация

Гарантия отправки сообщений последовательна

Сравнение

Только для событий которые происходят сейчас