【发布时间】:2016-01-07 02:11:35
【问题描述】:
我们在生产环境中使用 rabbitmq 并且非常满意。我们计划使用rabbitmq 扇出功能,但想了解其内部结构。
这是我的问题:
1.当消息被扇出到多个队列时,消息是否被复制到不同的队列而不仅仅是引用?
2.如果整个消息在所有扇出队列上都重复,有没有办法让它变得高效?
谢谢你,
-巴拉
【问题讨论】:
标签: rabbitmq rabbitmqctl
我们在生产环境中使用 rabbitmq 并且非常满意。我们计划使用rabbitmq 扇出功能,但想了解其内部结构。
这是我的问题:
1.当消息被扇出到多个队列时,消息是否被复制到不同的队列而不仅仅是引用?
2.如果整个消息在所有扇出队列上都重复,有没有办法让它变得高效?
谢谢你,
-巴拉
【问题讨论】:
标签: rabbitmq rabbitmqctl
为了存储 AMQP 消息内容,RabbitMQ 使用“二进制”,这是 Erlang 中的一种特殊类型。
Erlang VM 只复制那些足够小的二进制文件(如果我没记错的话,限制是 64 字节),否则,它使用引用计数。 Erlang 文档中有一个关于how binaries are implemented 的章节。您应该对第 4.1 段感兴趣。
【讨论】: