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支持死信队列,当消息无法被处理时,可以将消息发送到死信队列进行处理。这可以确保消息不会丢失,并允许进一步处理。

相关推荐
abcnull1 小时前
用javaparser做精准测试
java·ast·静态代码分析·精准测试·javaparser
叶小鸡1 小时前
Java 篇-项目实战-苍穹外卖-笔记汇总
java·开发语言·笔记
AI人工智能+电脑小能手2 小时前
【大白话说Java面试题】【Java基础篇】第22题:HashMap 和 HashSet 有哪些区别
java·开发语言·哈希算法·散列表·hash
juniperhan2 小时前
Flink 系列第21篇:Flink SQL 函数与 UDF 全解读:类型推导、开发要点与 Module 扩展
java·大数据·数据仓库·分布式·sql·flink
ID_180079054732 小时前
Python 实现亚马逊商品详情 API 数据准确性校验(极简可用 + JSON 参考)
java·python·json
c++之路2 小时前
C++23概述
java·c++·c++23
专注API从业者3 小时前
Open Claw 京东商品监控选品实战:一键抓取、实时监控、高效选品
java·服务器·数据库
摇滚侠3 小时前
DBeaver 导入数据库 导入 SQL 文件 MySQL 备份恢复
java·数据库·mysql
keep one's resolveY4 小时前
SpringBoot实现重试机制的四种方案
java·spring boot·后端
天空属于哈夫克34 小时前
企业微信API常见的错误和解决方案
java·数据库·企业微信