RabbitMQ实战:核心组件及其工作原理详解
创作时间:
作者:
@小白创作中心
RabbitMQ实战:核心组件及其工作原理详解
引用
CSDN
1.
https://blog.csdn.net/yprufeng/article/details/136595848
RabbitMQ是一个开源的消息代理软件,实现了高级消息队列协议(AMQP)标准,提供可靠的消息传递机制。它支持多种编程语言,并提供了丰富的功能和插件,使得开发者能够更轻松地构建分布式系统。本文将介绍RabbitMQ的核心组件及其工作原理,帮助读者更好地使用RabbitMQ作为消息中间件实现具体的业务场景。
使用docker安装一个rabbitmq消息中间键
# latest RabbitMQ 3.13
docker run -it --name rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:3.13-management
rabbitmq的核心组件
①Broker(服务器)
- rabbitmq的服务器,用于存储消息的服务器。
②Exchange(交换机)
- 用于接收来自生产者的消息,并将这些消息路由到一个或多个与之绑定的队列。
③Queue(队列)
- 用于存储消息的组件,为防止消息丢失,可持久化存储。
④Binding(绑定关系)
- 定义了 Exchange 和 Queue 之间的关系,它指定了消息应该如何从 Exchange 路由到相应的队列。
⑤Connection(通信连接)
- 客户端和RabbitMQ之间的TCP连接,用于消息的发送(生产者)或者消息的接收(发布者)。
⑥Channel(信道)
- 在连接中创建的虚拟连接,用于执行大部分的 AMQP操作。
⑦Virtual host
- 一个逻辑概念,它让 RabbitMQ可以在一台物理机上支持多个独立的消息代理实例。
rabbitmq的工作原理
发布消息:生产者producer通过Connection连接与broker服务器建立一个Channel信道,将消息发送给交换机Exchange,交换机通过路由键router-key将不同主题的消息通过路由键转发给消息队列Queue,消息被存储在Queue队列中,默认是内存存储,服务器重启消息会丢失,生产使用一般会开启持久化存储。
消费消息:消费者consumer通过Connection连接与broker服务器建立一个Channel信道,主动拉取或者通过服务器推送来消费消息。
热门推荐
金毛与拉布拉多:谁是训练王者?
金毛犬训练大作战:游戏篇
金毛训练秘籍:科学养宠新趋势
金毛犬:我想要自由,你却只想让我听你的话!
辣椒如何让湘菜“辣”出圈?
舌尖上的湖南:湘菜基本味型烹饪技巧详解
家用投影机怎么选?7个要点一次说清
乐之膳推荐:经典粤菜凉菜制作秘籍
利永周、徐嘉乐谈粤菜凉菜的传承与创新
金毛犬与边牧:谁是真正的"玩耍王者"?
金毛寻回犬:家庭伴侣的最佳选择?
2025年房建工程劳务分包指导价:全框架主体单包工费用解析
为什么劝你长了灰指甲要尽快看医生?
节后清淡饮食,减味不减营养
火葬场下午不能去,是因为阴气重?殡仪馆工作人员告诉你真相
祖千秋教你如何品鉴古风美酒
金庸笔下的酒文化:祖千秋教你如何品酒
文和友龙虾馆:长沙必打卡美食地!
长沙必打卡:岳麓山、橘子洲、马王堆汉墓
橘子洲烟花秀:长沙旅游必打卡!
川菜中的“怪味”:七种味道的完美融合
冬日打卡:丽江古城、玉龙雪山、香格里拉的文化之旅
农村自建房:框架结构真的值这个价吗?
五一必打卡:橘子洲头,感受伟人风采与湘江美景
扬州创新古城保护:让文物和文化都"活起来"
江苏八大特色面条:色香味俱全,丝毫不逊北方面食
上海美食地图:12种传统美食带你品味地道沪上味道
人的尸体被埋进土地几十年后就被分解吸收,为什么要火葬呢?
锻炼腹股沟的瑜伽
天门山未来一周最佳游览时间预测:周三还是周四?