rabbitmq笔记(一)rabbitmq简介及基础
一、消息组件
如果从消息组件来讲主要划分位两类:
1、JMS组件:ActiveMQ(慢);
2、AMQP组件(协议):性能是最高的,
而AMQP有两个主要的开源:
1)RabbitMQ:使用最广泛,速度也很快。
2)Kafka:是在大数据时代产生,明日之星
二、RabbitMQ
1、RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue)的开源实现;
2、RabbitMQ是由RabbitMQ Techenologies Ltd开发并且提供商业支持的。
该公司在2010年4月被SpringSource(VMWare的一个部门)收购。在2013年5月被并入Pivotal。
3、RabbitMQ的官网是:http://www.rabbitmq.com;
三、rabbitmq的系统架构

在所有的消息系统之中,其基本组从一定就是生产者、消费者、消息组件,其中消息组件可以起到的左右:数据缓冲队列,但是在 RabbitMQ里面这个消息组件的组成:
Exchange:交换空间,负责管理所有队列。
Queue:数据队列
RoutingKey:如果你现在所有队列的RoutingKey都一样,那么就属于广播消息,而如果不一样,则表示点对点消息。
四、RabbitMQ核心概念
broker:消息队列服务主机
Exchange:消息交换机,它指定消息按什么规则,路由到哪个队列
Queue:消息队列载体,每个消息都会被投入到一个或多个队列
binding:绑定,把exchange和queue按照路由规则绑定起来
Routing Key:路由关键字,exchange根据这个关键字进行消息投递
vhost:虚拟主机,一个vroker里可以设多个vhost,实现用户的权限分离
在rabbitmq里面提供有一个虚拟主机的概念,所谓的虚拟主机可以理解为不同的用户空间,也就是说各个空间可以有自己的队列信息,有自己的操作用户。
producer:消息生产者
consumer:消息消费者
channel:消息通道,在客户端的每个连接里,可建立多个channel,每个channel代表一个会话任务
rabbitmq笔记(一)rabbitmq简介及基础的更多相关文章
- springboot集成使用rabbitmq笔记(1.rabbitmq安装)
使用rabbitmq笔记一 使用rabbitmq笔记二 使用rabbitmq笔记三 1.选择适配的版本,参考---https://www.rabbitmq.com/which-erlang.html ...
- springboot集成使用rabbitmq笔记(2.rabbitmq使用)
使用rabbitmq笔记一 使用rabbitmq笔记二 使用rabbitmq笔记三 1.引入包 <dependencies> <dependency> <groupId& ...
- springboot集成使用rabbitmq笔记(3.基本过程)
使用rabbitmq笔记一 使用rabbitmq笔记二 使用rabbitmq笔记三 1.AMQP协议 AMQP 0-9-1的工作过程如下图:消息(message)被发布者(publisher)发送给交 ...
- RabbitMQ 入门 (Go) - 1. 简介和安装
Message Broker(消息代理) 维基百科对 Message Broker 的定义是:Message broker 是一种中介程序模块,它把消息从发送方的正式消息传递协议转化为接收方的正式消息 ...
- 【CSS简介、基础选择器、字体属性、文本属性、引入方式】前端小抄(2) - Pink老师自学笔记
[CSS简介.基础选择器.字体属性.文本属性.引入方式]前端小抄(2) 本学习笔记是个人对 Pink 老师课程的总结归纳,转载请注明出处! 一.CSS简介 CSS 的主要使用场景就是布局网页,美化页面 ...
- RabbitMQ 入门系列:2、基础含义理解:链接、通道、队列、交换机
系列目录 RabbitMQ 入门系列:1.MQ的应用场景的选择与RabbitMQ安装. RabbitMQ 入门系列:2.基础含义:链接.通道.队列.交换机. RabbitMQ 入门系列:3.基础含义: ...
- RabbitMQ 入门系列:3、基础含义:持久化、排它性、自动删除、强制性、路由键。
系列目录 RabbitMQ 入门系列:1.MQ的应用场景的选择与RabbitMQ安装. RabbitMQ 入门系列:2.基础含义:链接.通道.队列.交换机. RabbitMQ 入门系列:3.基础含义: ...
- RabbitMQ 入门系列:3、基础编码:官方SDK的引用、链接创建、单例改造、发送消息、接收消息。
系列目录 RabbitMQ 入门系列:1.MQ的应用场景的选择与RabbitMQ安装. RabbitMQ 入门系列:2.基础含义:链接.通道.队列.交换机. RabbitMQ 入门系列:3.基础含义: ...
- RabbitMQ 入门系列:5、基础编码:交换机的进阶介绍及编码方式。
系列目录 RabbitMQ 入门系列:1.MQ的应用场景的选择与RabbitMQ安装. RabbitMQ 入门系列:2.基础含义:链接.通道.队列.交换机. RabbitMQ 入门系列:3.基础含义: ...
随机推荐
- ES6深入浅出-8 新版的类(下集)-3.书籍推荐
- SAP标准屏幕中字段描述增强
转自:https://www.cnblogs.com/sap-ronny/p/7921817.html如果想要改变标准屏幕中的字段名称,如把物料主数据基本数据元素的名字改为我们想要的名字 . 1.首先 ...
- 【缺少kubernetes权限】 namespaces "xxx" is forbidden: User "xxx" cannot xxx resource "xxx" in API group "xxx" in the namespace "xxx"
需要添加权限,添加权限方式: https://github.com/argoproj/argo/issues/1068
- php mkdir没有权限不能创建成功的问题
php用mkdir创建目录时,必须保证要创建的目录的父级目录有用户权限才行, 比如当前执行脚本的用户是www用户,要创建的目录是/data/www/bbs/attach/2018 则/data/www ...
- 使用Spring Boot接受HTTP GET/POST请求的一个SQL并返回结果
这里说的意思是:我向我的Web服务器发送一个请求(因为GET请求的一些限制,所以最好使用POST请求,不过这里作为测试还是使用GET请求),请求中带一个sql参数,它对应查询的数据.然后我的Sprin ...
- [LeetCode] 855. Exam Room 考场
In an exam room, there are N seats in a single row, numbered 0, 1, 2, ..., N-1. When a student enter ...
- Python3 IO编程之StringIO和BytesIO
StringIO 很多时候,数据读写不一定是文件,也可以在内存中读写. 要把str写入StringIO,我们需要先创建一个StringIO,然后像文件一样写入即可 >>> from ...
- 【GStreamer开发】GStreamer基础教程10——GStreamer工具
目标 GStreamer提供了一系列方便使用的工具.这篇教程里不牵涉任何代码,但还是会讲一些有用的内容: 如何在命令行下建立一个pipeline--完全不使用C 如何找出一个element的Capab ...
- 高级UI-TableLayout
TableLayout选项卡,用于需要使用选项卡的场景,一般是用于切换Fragment,现在的主流做法一般是TableLayout+ViewPager+Fragment,综合实现选项卡的操作 由于Ta ...
- ant安装(for linux)
一. 下载 从http://ant.apache.org/bindownload.cgi可以下载最新的tar包:apache-ant-1.8.4-bin.tar.gz 二. 解压安装 将ant ...