2016-01-07 4 views
1

Мы используем rabbitmq в производстве и очень довольны этим. мы планируем использовать функцию разветвления rabbitmq, но хотели бы понять внутренности.Как работает разветвитель Rabbitmq внутри?

Вот мои вопросы:
1. Когда сообщение выдается вентиляторам в несколько очередей, это сообщение копируется в разные очереди, а не только по ссылке?
2. Если все сообщение дублируется во всех вентиляторных очередях, есть ли способ сделать его эффективным?

Спасибо,
-Bala

ответ

0

Для хранения AMQP содержание сообщения, RabbitMQ использует "двоичные файлы", которые конкретный тип в Erlang.

Erlang VM копирует только эти двоичные файлы, если они достаточно малы (предел составляет 64 байта, если я правильно помню), в противном случае он использует подсчет ссылок. В документации Erlang есть глава о how binaries are implemented. Paragraphe 4.1 должен вас заинтересовать.

Смежные вопросы