RabbitMQ(一)——简介
RabbitMQ系列
RabbitMQ(一)——简介
简介
RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件)。RabbitMQ服务器是用Erlang语言编写的,而群集和故障转移是构建在开放电信平台框架上的。所有主要的编程语言均有与代理接口通讯的客户端库。支持主流的操作系统,多种开发语言支持。
什么是MQ
消息队列(Message Queue,简称MQ),从字面意思上看,本质是个队列,FIFO先入先出,只不过队列中存放的内容是message而已。
其主要用途:不同进程Process/线程Thread之间通信。
术语
通道(Channel):一个管道连接,是tcp连接内的连接(broker),使用现有的TCP连接进行数据传输;
交换器(Exchange):消息路由,生产者发送的消息并不是直接发送到队列中而是先到指定的路由中,然后由路由根据路由key绑定的队列发送到指定队列中;
绑定(Binding):建立路由和队列容器的绑定关系;
消息(Message):生产者和消费者需要的消息数据;
连接(Connection):一个tcp连接;
生产(Producing):发送消息的程序就是生产者(Producer),用P表示
队列(Queue):消息在RabbitMQ和应用程序之间传递,但他们也能被存在队列中。队列没有大小限制,你可以存储任意多的消息进队列到无限缓存中,可以多个生产者发送消息到同一队列,也可以多个消费者从一个队列接收消息。
消费(Consuming):等待接收消息的程序。
特点
开源、性能优秀,稳定性保障
提供可靠性消息投递模式、返回模式
与Spring AMQP完美整合,API丰富
集群模式丰富,表达式配置,HA模式,镜像队列模型
保证数据不丢失的前提做到高可靠性、可用性
RabbitMQ(一)——简介的更多相关文章
- RabbitMQ (一) 简介和基本概念
原文:https://blog.csdn.net/vbirdbest/article/details/78577043 一.简介 MQ全称为Message Queue, 消息队列(MQ)是一种应用程序 ...
- .NET 使用 RabbitMQ 图文简介
前言 最近项目要使用RabbitMQ,园里里面已经有很多优秀的文章,Rabbitmq官网也有.net实例.这里我尝试下图文并茂之形式记录下使用的过程. 安装 RabbitMQ是建立在erlang OT ...
- rabbitmq架构简介(包括集群)
总的来说,rabbitmq使用erlang语言编写,其架构类似于servlet容器运行servlet应用,底层是erlang VM.然后是erlang节点,上面是应用.如下所示: 每个MQ中运行的应用 ...
- RabbitMQ学习(一):RabbitMQ要点简介
转载:http://blog.csdn.net/leixiaotao_java/article/details/78909760#t0 1.什么是RabbitMQ? RabbitMQ是由Erlang语 ...
- rabbitmq概念简介
AMQP协议 AMQP: Advanced Message Queue,高级队列协议. 特征: 这是一个在进程间传递异步消息的网络协议,因此数据的发送方.接收方以及容器(MQ)都可以在不同的设备上. ...
- Net分布式系统之四:RabbitMQ消息队列应用
消息通信组件Net分布式系统的核心中间件之一,应用与系统高并发,各个组件之间解耦的依赖的场景.本框架采用消息队列中间件主要应用于两方面:一是解决部分高并发的业务处理:二是通过消息队列传输系统日志.目前 ...
- 缓存大全(Memcached、redis、RabbitMQ )
Memcached: 简介.安装.使用 python操作Memcached Memcached天生支持集群 Redis: 简介.安装.使用.实例 Python操作Redis String.Hash.L ...
- RabbitMQ消息队列应用
RabbitMQ消息队列应用 消息通信组件Net分布式系统的核心中间件之一,应用与系统高并发,各个组件之间解耦的依赖的场景.本框架采用消息队列中间件主要应用于两方面:一是解决部分高并发的业务处理:二是 ...
- 基于springboot整合的rabbitmq
技术:springboot1.5.2 + maven3.0.5 + rabbitmq3.7.13 + jdk1.8 概述 RabbitMQ是对高级消息队列协议(Advanced Message Q ...
- java框架之SpringBoot(12)-消息及整合RabbitMQ
前言 概述 大多数应用中,可通过消息服务中间件来提升系统异步通信.扩展解耦的能力. 消息服务中两个重要概念:消息代理(message broker)和目的地(destination).当消息发送者发送 ...
随机推荐
- sort函数详解
sort函数 简介 其实STL中的sort()并非只是普通的快速排序,除了对普通的快速排序进行优化,它还结合了插入排序和堆排序.根据不同的数量级别以及不同情况,能自动选用合适的排序方法.当数据量较大时 ...
- 开源 - Ideal库 - Excel帮助类,ExcelHelper实现(五)
书接上回,我们继续来聊聊ExcelHelper的具体实现. 01.读取Excel到DataSet单元测试 在上一章我们主要讲解了读取Excel到DataSet的三个重载方法具体实现,还没来得及做单元测 ...
- Oracle.DataAccess.Client.OracleException: 提供程序与此版本的 Oracle 客户机不兼容
背景:进行程序部署,客户机上原有oracle客户端的版本为2.113.1.0(以下简称113),而数据库.开发机和其他客户机上均采用的2.112.1.0(以下简称112)客户端,所以进行了替换. 卸载 ...
- vs2017 opencv 编译错误 error C2665: “exp”: 3 个重载中没有一个可以转换所有参数类型
编译错误 - error C2665: "exp": 3 个重载中没有一个可以转换所有参数类型,在GenericPacketMath.h文件, 是因为使用了Eigen3.4库,只要 ...
- 【Amadeus原创】Docker容器的备份与还原
主要作用: 就是让配置好的容器,可以得到复用,后面用到得的时候就不需要重新配置. 其中涉及到的命令有: docker commit 将容器保存为镜像 docker save -o 将镜像备份为tar文 ...
- COSBrowser文件链接导出——爆赞的本地化管理功能
前言 用过COSBrowser的小伙伴们应该都知道,COSBrowser的文件分享功能非常好用.但是,文件分享功能又有所局限,就是它只能分享单个文件,而文件夹分享,更有其因为部分必要因素,如安全性 ...
- R数据分析:反事实框架和因果中介的理论理解
其实很早之前给大家写中介分析的做法的时候我也有思考过当中介变量或者因变量不是连续变量的时候,中介怎么做?或者说这个时候中介的结果如何解释?当时反正是一直没有太想明白这些问题,毕竟这些情况在发表的文献中 ...
- IOS多线程之NSOperation(3)
IOS多线程之NSOperation(3) 操作优先级和服务质量 可以通过QueuePriority属性来设置operation在队列中的执行优先级 public enum QueuePriority ...
- 使用 ayncio 实现 CountDownLatch
class CountDownLatch(object): def __init__(self, count=1): self.count = count self.lock = asyncio.Lo ...
- 【MySQL】求和查询,目标值int,但空数据时返回null的问题(Java)
问题分析 int selectDeviceMonthRepairCount(String deviceType, String month); <select id="selectDe ...