RabbitMq:什么是RabbitMq? ①

一、RabbitMq定位

RabbitMq是一个基于消息订阅发布的一款消息中间件。

二、技术原理

核心概念

  1. server:又称broker,接受客户端连接,实现AMQP实体服务。缓存代理,Kafka集群中的一台或多台服务器统称broker.

  2. connection:连接和具体broker网络连接。

  3. channel:网络信道,几乎所有操作都在channel中进行,channel是消息读写的通道。客户端可以建立多个channel,每个channel表示一个会话任务。

  4. message:消息,服务器和应用程序之间传递的数据,由properties和body组成。properties可以对消息进行修饰,比如消息的优先级,延迟等高级特性;body是消息实体内容。

  5. Virtual host:虚拟主机,用于逻辑隔离,最上层消息的路由。一个Virtual host可以若干个Exchange和Queue,同一个Virtual host不能有同名的Exchange或Queue。

  6. Exchange:交换机,接受消息,根据路由键转发消息到绑定的队列上。

  7. binding:Exchange和Queue之间的虚拟连接,binding中可以包括routing key

  8. routing key:一个路由规则,虚拟机根据他来确定如何路由 一条消息。

  9. Queue:消息队列,用来存放消息的队列。

三、Exchange类型解读

Direct:精准+直连确定队列

交换机绑定一个或多个队列

Fanout:无差别广播确定队列

Topic:模糊匹配

参考:https://www.cnblogs.com/bulldozer/p/17413517.html

相关推荐
敏叔V5873 小时前
联邦学习与大模型:隐私保护下的分布式模型训练与微调方案
分布式
短剑重铸之日5 小时前
《7天学会Redis》特别篇: Redis分布式锁
java·redis·分布式·后端·缓存·redission·看门狗机制
重生之绝世牛码7 小时前
Linux软件安装 —— kafka集群安装(SASL密码验证)
大数据·linux·运维·服务器·分布式·kafka·软件安装
填满你的记忆7 小时前
【从零开始——Redis 进化日志|Day5】分布式锁演进史:从 SETNX 到 Redisson 的完美蜕变
java·数据库·redis·分布式·缓存
無森~8 小时前
ZooKeeper
分布式·zookeeper·云原生
小北方城市网8 小时前
SpringBoot 集成 MinIO 实战(对象存储):实现高效文件管理
java·spring boot·redis·分布式·后端·python·缓存
Blossom.1188 小时前
大模型分布式训练通信优化:从Ring All-Reduce到分层压缩的实战演进
人工智能·分布式·python·深度学习·神经网络·机器学习·迁移学习
码农水水9 小时前
得物Java面试被问:大规模数据的分布式排序和聚合
java·开发语言·spring boot·分布式·面试·php·wpf
爱吃提升9 小时前
分布式爬虫的核心原理详细介绍
分布式·爬虫
無森~9 小时前
Hadoop序列化与反序列化
大数据·hadoop·分布式