码迷,mamicode.com
首页 > 其他好文 > 详细

RabbitMQ(一)——简介

时间:2020-04-18 13:35:28      阅读:58      评论:0      收藏:0      [点我收藏+]

标签:电信   ext   关系   交换   构建   process   协议   开放   erlang   

简介

  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(一)——简介

标签:电信   ext   关系   交换   构建   process   协议   开放   erlang   

原文地址:https://www.cnblogs.com/zousc/p/12725114.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!