首页 > 编程知识 正文

rabbitmq消息类型(消息中间件rabbitmq)

时间:2023-05-05 19:15:34 阅读:69244 作者:4948

M问、消息队列和消息通过管道传递。 它就像“快递”,从生产者那里向消费者发送信息。 RabbitMQ是消息队列之一。

如果异步返回的执行时间长,并且消息发送者对执行结果不太感兴趣,则消息队列非常适合。

中间件是将具体业务与底层逻辑解除耦合的软件,分为消息中间件(MOM )、RPC )、UDA )、TPM (事务中间件)等。

消息中间件也称为消息队列、消息队列中间件,分为RabbitMQ、ActiveMQ、Kafka等。

每个部分的名称和作用?

1.Brocker :消息队列中的服务器实体。 Rabbitmq成为选择之一。

2.Exchange (用于消息交换、消息的接收和分配。 指定消息按哪个规则路由到哪个队列。

3 .队列)用于存储生产者消息的消息队列。 每个消息都放入一个或多个队列中。

4 .绑定密钥:用于将交换机上的消息绑定到队列的绑定关键字。 负责根据路由规则绑定exchange和queue。

5 .路由密钥:用于将生产者数据分配给交换机的根关键字。 exchange根据该关键字进行消息的发送。

6.Vhost )虚拟主机,一个broker可以有多个vhost,作为不使用用户的权限分离使用。

7.Producer :消息生产者是传递消息的过程。

8.Consumer :消息消费者是接收消息的过程。

9 .通道:通道,用于推送消息的通道。 可以创建多个通道。 每个channel代表一个会话任务。

使用流程?

1 .消息接收客户端连接到消息队列服务器并打开通道。

2 .客户端声明exchange并设置相关属性。

3 .客户端声明队列并设置相关属性。

4 .客户端使用路由密钥在exchange和queue之间建立绑定关系。

5 .消息传递客户端向exchange传递消息。

6.exchange在接收到消息时,根据消息的密钥和已经设置的绑定进行消息吉鲁,并将消息传递到一个或多个队列。

总而言之,生产者应当将消息传递到交换机33-354,根据关键字匹配对应的队列33-354,从而使消息进入队列33-354,消费者从队列检索消息并使用该消息。

我们的项目为什么不选择RabbitMQ,选择其他消息中间件?

除Qpid外,RabbitMQ是唯一实现AMQP标准的消息服务器

2 .保证了可靠性、RabbitMQ的持久化支持、消息稳定性

3 .高并发性,RabbitMQ使用了Erlang开发语言。 Erlang是为电话交换机开发的语言,天生具有高并发环和高可用性特性;

4 .集群部署之所以简单,是因为Erlang使RabbitMQ集群的部署变得超级简单;

5 .社区活跃度高,根据网上资料,RabbitMQ也是首选;

2 .工作队列模型:一个生产者生成的消息可以被多个消费者消费,而一条消息只能被一个消费者消费。

3 .发布/订阅模式:如果增加了一个交换机,生产者将向交换机发送消息,交换机将向每个队列发送消息。 在这种情况下,多个消费者可以获得一条消息。

顺便说一下,这也被称为广播模式,是最常用的模式,ITOO使用的是这种模式。

4 .路由模型:路由密钥又增加了一个。 生产者发送信息时,上面有路由密钥。 消费者选择自己需要的消息进行消费,还配置路由密钥。

5 .主题模式:又增加了一个通配符。 这样,消费者方面在需要多种信息的时候,不用逐一设置,就可以用通配符接收自己想要的各种信息。

6.RPC:c对s说“我有需要你帮助的任务”,s处理后,把结果还给c。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。