rabbitMQ的知识点

RabbitMQ是一种消息队列软件,它实现了高度可靠的消息传递机制。RabbitMQ支持多种消息协议,包括AMQP、STOMP、MQTT等,比较灵活。以下是一些rabbitmq的知识点:

  1. 消息队列:消息队列是一种分布式系统中广泛使用的通信模式,其中应用程序可以通过发送和接收消息实现异步通信。RabbitMQ的主要目的就是在应用程序之间传递消息。

  2. 消息传递模型:RabbitMQ提供了两种消息传递模型:发布-订阅和点对点。发布-订阅模型允许多个消费者在同一时间收到同一消息。点对点模型只有一个消费者可以收到消息。

  3. Exchange:Exchange是一种消息路由器,用于将消息路由到一个或多个队列。Exchange有四种类型:direct、fanout、topic和headers,每种类型都有不同的路由规则。

  4. Queue:消息队列是RabbitMQ中存储消息的实体。队列具有名称,并根据名称进行访问。消息可以通过Exchange路由到不同的队列,由消费者从队列中接收。

  5. Bindings:Bindings是连接Exchange和Queue的路由规则。Bindings定义了Exchange如何将消息路由到队列。

  6. Connection:连接是RabbitMQ客户端与Broker之间的TCP连接。

  7. Channel:通道是建立在连接之上的虚拟连接。通过通道,客户端可以与Broker进行交互。

  8. 消息确认:消息确认是RabbitMQ保证消息到达目的地的机制。客户端可以选择使用自动确认或手动确认模式,手动确认模式可以确保消息被正确地处理。

  9. 消费者优先级:消费者可以设置优先级,高优先级的消费者可以优先处理消息。

  10. 死信队列:RabbitMQ支持死信队列,当消息无法被处理时,可以将消息发送到死信队列进行处理。这可以确保消息不会丢失,并允许进一步处理。

相关推荐
crud2 分钟前
Spring Boot 3 整合 Swagger:打造现代化 API 文档系统(附完整代码 + 高级配置 + 最佳实践)
java·spring boot·swagger
天天摸鱼的java工程师7 分钟前
从被测试小姐姐追着怼到运维小哥点赞:我在项目管理系统的 MySQL 优化实战
java·后端·mysql
周某某~18 分钟前
四.抽象工厂模式
java·设计模式·抽象工厂模式
异常君1 小时前
高并发数据写入场景下 MySQL 的性能瓶颈与替代方案
java·mysql·性能优化
烙印6011 小时前
MyBatis原理剖析(二)
java·数据库·mybatis
你是狒狒吗1 小时前
TM中,return new TransactionManagerImpl(raf, fc);为什么返回是new了一个新的实例
java·开发语言·数据库
勤奋的知更鸟1 小时前
Java编程之组合模式
java·开发语言·设计模式·组合模式
千|寻1 小时前
【画江湖】langchain4j - Java1.8下spring boot集成ollama调用本地大模型之问道系列(第一问)
java·spring boot·后端·langchain
爱编程的喵1 小时前
深入理解JavaScript原型机制:从Java到JS的面向对象编程之路
java·前端·javascript
on the way 1231 小时前
行为型设计模式之Mediator(中介者)
java·设计模式·中介者模式