1:基本概念

ConnectionFactory(连接工厂): 生产Connection的的工厂

Connection(连接):是RabbitMQ的socket的长链接,它封装了socket协议相关部分逻辑

Channel(频道|信道): 是建立在Connection连接之上的一种轻量级的连接,我们大部分的业务操作是在Channel这个接口中完成的,包括定义队列的声明queueDeclare、交换机的声明exchangeDeclare、

队列的绑定queueBind、发布消息basicPublish、消费消息basicConsume等。

Producer(生产者):生产者用于发布消息

Exchange(交换机):生产者会将消息发送到交换机,然后交换机通过路由策略(规则)将消息路由到匹配的队列中去

Routing Key(路由键):一个String值,用于定义路由规则,在队列绑定的时候需要指定路由键,在生产者发布消息的时候需要指定路由键,当消息的路由键和队列绑定的路由键匹配时,消息就会发送到该队列。

Queue(队列):用于存储消息的容器,可以看成一个有序的数组,生产者生产的消息会发送到交换机中,最终交换机将消息存储到某个或某些队列中,队列可被消费者订阅,消费者从订阅的队列中获取消息。

Binding(绑定): Binding并不是一个概念,而是一种操作,RabbitMQ中通过绑定,以路由键作为桥梁将Exchange与Queue关联起来(Exchange—>Routing Key—>Queue),这样RabbitMQ就知道如何正确地将消息路由到指定的队列了,通过queueBind方法将Exchange、Routing Key、Queue绑定起来

Consumer(消费者):用于从队列中获取消息,消费者只需关注队列即可,不需要关注交换机和路由键,消费者可以通过basicConsume(订阅模式可以从队列中一直持续的自动的接收消息)或者basicGet(先订阅消息,然后获取单条消息,再然后取消订阅,也就是说basicGet一次只能获取一条消息,如果还想再获取下一条还要再次调用basicGet)来从队列中获取消息

vhost(虚拟主机): RabbitMQ 通过虚拟主机(virtual host)来分发消息, 拥有自己独立的权限控制,不同的vhost之间是隔离的,单独的。vhost是权限控制的基本单位,用户只能访问与之绑定的vhost,默认vhost:”/” ,默认用户”guest” 密码“guest”,来访问默认的vhost。

转载于:https://www.cnblogs.com/songpingyi/p/9939302.html

RabbitMQ的基本概念相关推荐

  1. 通过实例理解 RabbitMQ 的基本概念

    先说下自己开发的实例. 最近在使用 Spring Cloud Config 做分布式配置中心(基于 SVN/Git),当所有服务启动后,SVN/Git 中的配置文件更改后,客户端服务读取的还是旧的配置 ...

  2. [RabbitMQ]消息应答概念_消息手动应答代码

    消息应答 概念 消费者完成一个任务可能需要一段时间,如果其中一个消费者处理一个长的任务并仅只完成了部分突然它挂掉了,会发生什么情况.RabbitMQ 一旦向消费者传递了一条消息,便立即将该消 息标记为 ...

  3. RabbitMQ安装|使用|概念|Golang开发

    手册:http://www.rabbitmq.com/getstarted.html 安装:http://www.rabbitmq.com/download.html 参考:http://blog.c ...

  4. RabbitMQ的基本概念以及绑定策略的简单演示

    首先先来了解一下两个名词 JMS ​Java Message Service,Java定义的一套消息服务标准,符合JMS标准规范的,都是通用的Java消息服务 MOM ​Message Oriente ...

  5. rabbitmq一:基本概念

    amqp(advanced message queuing protocol 高级消息队列协议)是一个应用层协议.

  6. RabbitMQ 01 概念

    本篇包含了RabbitMQ概念的一些东西,下篇会整理出SpringBoot结合RabbitMQ的使用案例. 文章目录 一.MQ概述 1.什么是消息 2.什么是消息队列 3.MQ的特点 二.MQ适用场景 ...

  7. RabbitMQ 入门系列(2)— 生产者、消费者、信道、代理、队列、交换器、路由键、绑定、交换器

    本系列是「RabbitMQ实战:高效部署分布式消息队列」和 「RabbitMQ实战指南」书籍的读书笔记. RabbitMQ 中重要概念 1. 生产者 生产者(producer)创建消息,然后发送到代理 ...

  8. rabbitmq 限制速度_=(:) RabbitMQ详解

    本篇包含了RabbitMQ概念的一些东西,下篇会整理出SpringBoot结合RabbitMQ的使用案例. 目录 一.MQ概述 1.什么是消息 2.什么是消息队列 3.MQ的特点 二.MQ适用场景 1 ...

  9. 末学者笔记--openstack共享组件:rabbitmq(3)

    openstack共享组件:消息队列rabbitmq 一.MQ 全称为 Message Queue, 消息队列( MQ )                       是一种应用程序对应用程序的通信方 ...

最新文章

  1. 阿里云免费开放一切AI算力,加速新型冠状病毒新药和疫苗研发
  2. PAT甲级1041 Be Unique :[C++题解]模拟、哈希表
  3. Kubernetes容器上下文环境
  4. 基于iSroll 5.0实现的上拉加载和下拉刷新插件
  5. 20周年献礼:Visual Studio 2017正式版3月7日发布
  6. iOS中NSLog的优化使用
  7. presto联合查询mysql和ES_presto-mysql/elasticsearch6.0.0安装部署测试,异种数据源关联查询入门实践...
  8. Adobe 修复严重的 Photoshop 缺陷
  9. 【SQLServer】
  10. HTML里face作用,html5 – @ font-face在子文件夹中的字体时不起作用
  11. 规范信息系统工程建设市场 促进信息化健康发展
  12. MATLAB免疫算法与粒子群算法进行函数优化
  13. 汉高任命荣杰博士为大中华区总裁;沃尔玛中国2021届校招正式启动 | 美通企业日报...
  14. 使用Windows驱动的虚拟打印机,打印Excel表格无表格线问题解决(1)
  15. 使用pe系统 修复引导
  16. 视频接口CVBS/Component/BNC/VGA/DVI/HDMI/SDI/DP/Type-C
  17. 降维 (Dimensionality Reduction)
  18. python 创建线程
  19. 算力大革命 智能经济新时代
  20. 2018年10月移动应用APP活跃用户数排行榜TOP20

热门文章

  1. word插入图片被文字挡住问题
  2. Linux对象文件是个啥东东
  3. java step1:基础知识1
  4. 获取屏幕,浏览器,网页高度宽度
  5. CSS绝对定位absolute元素的初始包含块不是body元素,也不是html元素
  6. 计算机网络学习笔记(14. OSI参考模型②)
  7. 【Vue2.0】— 消息订阅与发布pubsub(二十)
  8. JavaScript学习(五十八)—作用域链
  9. spring boot文件的上传与下载
  10. python连接sql server