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

相关推荐
喵了几个咪4 小时前
Golang微服务框架Kratos应用分布式任务队列Machinery
分布式·微服务·golang
x***58704 小时前
后端分布式缓存一致性哈希,Java实现
分布式·缓存·哈希算法
g***86696 小时前
RabbitMQ之交换机
分布式·rabbitmq·ruby
不会写代码的ys6 小时前
仿RabbitMQ实现消息队列(三)--muduo介绍与使用
linux·分布式·rabbitmq
一只会写代码的猫6 小时前
当分布式协同成为主流应用架构时系统可信计算将面临的新挑战与革新方向
分布式·架构
s***55816 小时前
使用 Docker 部署 RabbitMQ 的详细指南
docker·容器·rabbitmq
q***84576 小时前
分布式监控Skywalking安装及使用教程(保姆级教程)
分布式·skywalking
小坏讲微服务8 小时前
Docker Compose搭建Git仓库私服上传微服务
分布式·git·docker·微服务·容器·springcloud·springalibaba
Violet_YSWY9 小时前
Kafka KRaft 模式(无 ZooKeeper)是啥
分布式·zookeeper·kafka
Alex艾力的IT数字空间19 小时前
设计既保持高性能又兼顾可移植性的跨平台数据结构
数据结构·分布式·算法·微服务·中间件·架构·动态规划