RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

你是否听说过或者使用过队列

你是否使用过或者听说过消息队列

你是否使用过或者听说过RabbitMQ

提到这几个词,用过的人,也许觉得很简单,没用过的人,也许觉得很复杂,至少在我没使用消息队列之前,听别人提到消息队列,都感觉很复杂,很高深。

好了,言归正传,本篇博客我们就讲解下什么是消息队列,RabbitMQ环境的安装配置,最后通过一个Hello World示例了解下Rabbit MQ的使用方法。

1.基本概念讲解 1.1队列(Queue)

队列是常用的数据结构之一,是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作。

进行插入操作的端称为队尾,进行删除操作的端称为对头。

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

在Java中,java.util包下已经有队列的相关实现,我们可以直接使用。

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

1.2消息队列(Message Queue)

消息是计算机/应用间传送的数据单位,可以非常简单,例如只包含文本字符串,也可以很复杂,可能包含嵌入对象。

消息队列是在消息的传输过程中保存消息的容器。

消息传输时,先发送到队列,队列的主要目的是提供路由并保证消息的传递,如果发送消息时接收者不可用,消息队列会保留消息,直到可以成功的传递它。

可以把消息队列理解成快递公司,你需要寄一个物件(消息)给你的朋友,快递公司收到物件会保证物件送到你的朋友手中,可能存在多次寄送才送达成功的情况,比如第一次送过去,你朋友不在家。

也许有人好奇,为什么我们不直接使用JDK自带的队列,而是要使用消息队列呢?

这是因为JDK自带的队列都存储在内存中,一但应用或者服务器挂了,消息就丢失了,使用消息队列可以避免消息丢失问题(注意不是100%不丢失),就像快递公司会保证你的物件寄到你的朋友手中,但肯定有丢件的几率。

1.3RabbitMQ

RabbitMQ是用Erlang语句开发的基于高级消息队列协议(AMQP)的消息队列中间件。

因为它开源,而且版本更新快,所以在国内互联网公司被广泛使用。

其它使用的消息中间件还有ActiveMQ,RocketMQ,Kafka等,有兴趣的同学可以自行研究。

还有2个专业术语要了解下:

生产者:发送消息的应用程序被称为生产者。

消费者:接收消息的应用程序被称为消费者。

2.RabbitMQ安装及配置

了解完基本概念,让我们在本机上安装下RabbitMQ,因为它是基于Erlang语言开发的,所以我们要先安装Erlang。

2.1Erlang安装及配置

Erlang下载地址:

因为我的电脑是Windows 64位系统,所以我下载的是64位的,系统是32位的同学注意下版本。

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

安装过程比较简单,以下为部分截图:

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

安装完成后,需要新建个环境变量(打开方式:计算机--右键--属性--高级系统设置--高级--环境变量):

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

ERLANG_HOME E:\Program Files\erl10.4(修改为你的安装路径)

2.2RabbitMQ安装及配置

RabbitMQ下载地址:https://www.rabbitmq.com/install-windows.html

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

安装过程也比较简单,以下为部分截图:

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

安装完成后,在cmd窗口中执行以下命令激活RabbitMQ Manage Plugin

"E:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.15\sbin\rabbitmq-plugins.bat" enable rabbitmq_management

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

然后执行命令重启RabbitMQ服务:

net stop RabbitMQ && net start RabbitMQ

如果你的cmd窗口不是以管理员身份打开的,会出现如下报错信息

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

解决方法也很简单,以管理员身份打开cmd窗口执行命令即可

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

关于这一步,可以不使用命令重启RabbitMQ服务,而是打开Windows的服务列表,找到RabbitMQ服务,重启即可。

RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例

到这一步,RabbitMQ的安装就算完成了,其中有几个默认值,我们要知晓下:

默认的端口号:5672

默认的用户是guest guest

管理后台的默认端口号:15672

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpxzwy.html