回顾RabbitMQ的一些知识

一 概述

        RabbitMQ的主要使用场景:

        

 二 回顾基本知识

        消息代理:可以理解为安装消息中间件的服务器。当消息发送者发送消息之后,这些消息将会由消息代理进行管理,消息代理保证消息能够传递到指定的目的地。

        消息队列中主要的消息目的地:

        1. 点对点消息通信:消息发送者发送消息,消息代理将其放入队列中,消息接收者从队列中获取消息内容,消息读取后被一处队列。消息的发送者是唯一的,但是消息接收者并不唯一。
        2. 发布(public)、订阅(subscribe):消息发送者发送消息到主题,多个订阅者监听这个主题,那么就会在消息到达时同时收到消息。

三 回顾常见的消息协议

        JMS(Java Message Service) Java消息服务:基于JVM消息代理规范,常见的有ActiveMQ,HornetMQ是通过JMS实现的。
        AMQP(Advanced Message Queuing Protocol)高级消息队列协议:同样是一个消息代理的规范,兼容JMS,RabbitMQ是通过AMQP协议实现的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
RabbitMQ是一个开源的消息中间件,实现了高效的消息传递机制,可以在分布式系统中进行可靠的消息传递下面是RabbitMQ知识体系: 1. 消息队列:RabbitMQ基于消息队列的模型,通过将消息发送到队列中,实现了消息的异步传递和解耦。消息队列可以提供可靠性、可扩展性和灵活性。 2. 生产者和消费者:RabbitMQ中的生产者负责发送消息到队列,而消费者则从队列中接收并处理消息。生产者和消费者之间通过交换机(Exchange)进行消息的路由。 3. 交换机(Exchange):交换机是消息的分发中心,它接收生产者发送的消息,并根据一定的规则将消息路由到一个或多个队列中。RabbitMQ提供了不同类型的交换机,如直连交换机、主题交换机、扇形交换机等。 4. 队列(Queue):队列是消息的存储区域,生产者发送的消息会被存储在队列中,消费者从队列中获取消息进行处理。每个队列都有一个名称,并且可以绑定到一个或多个交换机上。 5. 绑定(Binding):绑定是交换机和队列之间的关联关系,它定义了消息从交换机路由到哪个队列。绑定可以使用路由键(Routing Key)来指定消息的路由规则。 6. 路由键(Routing Key):路由键是生产者在发送消息时指定的关键字,交换机根据路由键将消息路由到一个或多个队列中。不同类型的交换机对路由键的匹配规则有所不同。 7. ACK机制:RabbitMQ支持消息的确认机制,即消费者在处理完一条消息后发送ACK(确认)给RabbitMQ,告知其已成功处理该消息。如果消费者在一定时间内未发送ACK,RabbitMQ会将该消息重新投递给其他消费者。 8. 持久化:RabbitMQ可以将消息和队列进行持久化,确保在服务器重启或崩溃后消息不会丢失。持久化可以通过设置消息的持久化标志和队列的持久化属性来实现。 9. 高可用性:RabbitMQ支持集群模式,多个节点组成一个集群,提供高可用性和负载均衡。当一个节点故障时,其他节点可以接管其工作,确保消息的可靠传递。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值