首页 > 技术文章 > 1.RabbitMQ简介

laosunlaiye 2019-10-14 14:19 原文

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u013517797/article/details/79371277
一、什么是MQ?
MQ为Message Queue,即是“消息队列”,它是应用程序和应用程序之间的同新方法。
遵循Message Queue规则开发出来的,具有消息队列特点的产品,都可以称之为“消息中间件”(JMS消息服务器)。
目前业内有很多消息中间件产品,例如Apache出品的“ActiveMQ”和“Kafka”(分布式发布订阅消息系统)、Rabbit团队的“RabbitMQ”,以及Metamorphosis、DoNetMQ、beanstalkd等等其它消息队列中间件。

二、什么是RabbitMQ?
RabbitMQ是Rabbit团队开发的一个开源的消息队列组件,在AMQP基础上完成的,可以复用的企业消息系统。
RabbitMQ是负责消息的生产和消费,我们可以理解为,RabbitMQ是一个仓库的中转站,所有的程序消息都发送给RabbitMQ,然后由RabbitMQ来负责把这些消息来运输给消费者。

在计算机领域中,有很多协议,例如HTTP协议、TCP协议、SOAP协议、SVN协议等等。而AMQP是RabbitMQ的基础,其英文全称为“Advanced Message Queuing Protocol”,它是一个提供统一消息服务的应用层标准高级消息队列协议。
说白了AMQP就是消息队列的一个协议。

RabbitMQ是使用Erlang语言开发的,Erlang是一个通用的面向并发的编程语言。它是1987年由瑞典电信设备制造商爱立信所辖的CS-Lab开发,目的是创造一种可以应对大规模并发活动的编程语言和运行环境。这里我们不需要了解Erlang语言,只需要知道RabbitMQ的源码类型即可。

RabbitMQ支持主流的操作系统,Linux、Windows、MacOX等。

RabbitMQ对多种开发语言支持,其为很多开发语言提供了各自的驱动。支持的语言有:Java、
Python、Ruby、.NET、PHP、C/C++、node.js等

三、RabbitMQ的资料和学习途径。
学习RabbitMQ的最权威的学习参考资料,肯定是官方网站最权威。RabbitMQ的官方网站为:www.rabbitmq.com。

登录进官网首页可以看到如下页面:

我们可以通过导航栏的“Get Started”来开始RabbitMQ的安装和使用,可以通过“Support”查看RabbitMQ所支持的环境,可以通过“Community”与RabbitMQ官方联系,也可以通过“Docs”进行文档资料的下载,最后通过“Bolg”可以查看RabbitMQ的官方博文。

四、学习内容
学习RabbitMQ主要是学习它的6种队列:

这里最后一种我们暂时不学习,因为RPC是远程调用的模式,严格意义上来讲已经脱离了
消息队列的范畴了,所以这里不对该队列模式进行讲解。(想要学习RPC,推荐学习阿里的Dubbo)

关于RabbitMQ就介绍到这里,后面我们讲学习其安装以及运行。

原文链接:https://blog.csdn.net/acmman/article/details/79371277

推荐阅读