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

相关推荐
小股虫8 小时前
分布式事务:在增长中台,我们如何做到“发出去的内容”和“记录的数据”不打架?
分布式·微服务·云原生·架构·团队建设·方法论
是三好8 小时前
分布式事务seata
java·分布式·seata
optimistic_chen8 小时前
【Redis 系列】常用数据结构---Hash类型
linux·数据结构·redis·分布式·哈希算法
yuankunliu9 小时前
【分布式事务】4、分布式事务Seata的高级应用详解
分布式
java1234_小锋9 小时前
ZooKeeper集群中服务器之间是怎样通信的?
分布式·zookeeper·云原生
昌sit!11 小时前
hadoop集群搭建
大数据·hadoop·分布式
左灯右行的爱情13 小时前
Kafka专辑- 消息队列是什么
分布式·kafka
小股虫14 小时前
让系统“杀不死”:同步与异步场景下的弹性设计模式手册
分布式·微服务·设计模式·架构·团队建设·方法论
前端世界14 小时前
鸿蒙分布式权限管理实战指南:架构原理 + 可运行 Demo
分布式·架构·harmonyos
西***634715 小时前
「技术筑基 医疗提质」—— 分布式视频通讯系统在医疗领域的应用解析
分布式·音视频