经纪人与交易所之间的区别

时间:2016-02-19 16:12:27

标签: rabbitmq

我是RabbitMQ的新手并试图弄清楚经纪人和交易所之间的区别。

从我所读过的内容来看,这些术语似乎几乎可以互换使用,而且在图表中,经纪人似乎都包含了交换和队列。

来自" RabbitMQ简洁"书:

  

交换是AMQP实体,其中消息被发送到消息   经纪人。交换机接收消息,然后将其路由到一个或多个   队列

那么什么是经纪人?在RabbitMQ管理中,有一个用于"交换"的标签,但不包括经纪人。我可以直接与经纪人互动,还是仅由交易所完成?

1 个答案:

答案 0 :(得分:3)

“Broker”是RabbitMQ所使用的消息传递系统类型的通用术语。它是一个集中式消息传递系统,具有处理消息路由和传递等的服务器。

来自ZeroMQ的这篇论文很好地理解了代理商和无代理商之间的差异:http://zeromq.org/whitepapers:brokerless(虽然这篇论文相当偏向于无代理模型,但两者都很好并且都有用。我倾向于选择rabbitmq /代理系统,但并非总是如此)

从另一个角度来看,这是RabbitMQ的经纪人与无经纪人的帖子:https://www.rabbitmq.com/blog/2010/09/22/broker-vs-brokerless/

在大多数情况下,只要在你的脑海中替换“rabbitmq服务器”,当你看到工作“经纪人”时,你就会好起来。

正如您所指出的那样,交换是在RabbitMQ中发布消息的内容。它根据交换类型处理消息的绑定和路由。