RabbitMQ入门:认识并安装RabbitMQ(以Windows系统为例)[通俗易懂]

项目需求刚刚递交,新需求还没来。闲下来了,写写博客放松下。华丽的分割线最近在学习SpringCloud,其中消息总线SpringCloudBus是必不可少的,但是SpringCloudB

大家好,又见面了,我是全栈君。

项目需求刚刚递交,新需求还没来。闲下来了,写写博客放松下。

===========华丽的分割线=================

最近在学习Spring Cloud,其中消息总线Spring Cloud Bus是必不可少的,但是Spring Cloud Bus目前只支持RabbitMQ和kafka,因此学习RabbitMQ势在必行,今天先从最基本的安装开始。安装之前我们先认识下RabbitMQ。

一、初识RabbitMQ

百度百科有这么一句话:

MQ是消费-生产者模型的一个典型的代表,一端往消息队列中不断写入消息,
而另一端则可以读取或者订阅队列中的消息。
MQ和JMS类似,但不同的是JMS是SUN JAVA消息中间件服务的一个标准和API定义,
而MQ则是遵循了AMQP协议的具体实现和产品。

他的官网中用大大的黑粗字体写着:

RabbitMQ is the most widely deployed open source message broker.

由此可见,RabbitMQ是一个消息中间件,生产者生成消息,消费者消费消息,它遵循AMQP(高级消息队列协议),是最广泛部署的开源消息代理。

另外,RabbitMQ是用Erlang语言实现的,它有几个概念:

    broker:消息队列服务器实体。
  exchange:消息交换机,它指定消息按什么规则,路由到哪个队列。
  queue:消息队列,每个消息都会被投入到一个或多个队列。
  binding:绑定,它的作用就是把exchange和queue按照路由规则绑定起来。
  routing Key:路由关键字,exchange根据这个关键字进行消息投递。
  vhost:虚拟主机,一个broker里可以开设多个vhost,用作不同用户的权限分离。
  producer:消息生产者,就是投递消息的程序。
  consumer:消息消费者,就是接受消息的程序。
  channel:消息通道,在客户端的每个连接里,可建立多个channel,每个channel代表一个会话任务。

消息队列的使用过程大概如下:

(1)客户端连接到消息队列服务器broker,打开一个channel。
(2)客户端声明一个exchange,并设置相关属性。
(3)客户端声明一个queue,并设置相关属性。
(4)客户端使用routing key,在exchange和queue之间建立好绑定关系。
(5)客户端投递消息到exchange。
(6)exchange接收到消息后,就根据消息的key和已经设置的binding,进行消息路由,将消息投递到一个或多个队列里。

 

二、安装RabbitMQ(以Windows为例)

由于RabbitMQ是用Erlang语言编写的,因此需要先安装Erlang。

  1. 通过http://www.erlang.org/downloads获取对应安装文件进行安装
  2. 增加环境变量ERLANG_HOME=D:\Program Files\erl9.3(这里的目录是我的安装目录,你要换成自己的目录)
  3. 修改环境变量Path,在原来的值后面加上“;%ERLANG_HOME%\bin”

安装完Erlang之后,我们就可以安装RabbitMQ了。

  1. 到http://www.rabbitmq.com/install-windows-manual.html下载安装包进行安装
  2. 增加环境变量RABBITMQ_HOEM=D:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.5(这里的目录是我的安装目录,你要换成自己的目录)
  3. 修改环境变量Path,在原来的值后面加上“;%RABBITMQ_HOME%\sbin”

安装好之后,RabbitMQ就作为一个服务按照默认方式进行启动了RabbitMQ入门:认识并安装RabbitMQ(以Windows系统为例)[通俗易懂]

 

三、启动管理页面

 我们可以通过Web进行管理RabbitMQ:

  1. 运行命令rabbitmq-plugins enable rabbitmq_management 开启Web管理插件RabbitMQ入门:认识并安装RabbitMQ(以Windows系统为例)[通俗易懂]

     

  2. 通过浏览器访问http://localhost:15672,并通过默认用户guest进行登录,密码也是guest,登录后的页面:RabbitMQ入门:认识并安装RabbitMQ(以Windows系统为例)[通俗易懂]页面中有我们前面提到的基本概念,比如channels/exchanges/queues等,可以逐个点进去看下详细情况。

    如果要添加新用户的话,点击Admin选项卡,进行添加,详细的不再叙述,相信大家一看就能懂。

就这样,RabbitMQ安装完毕。下一篇随笔将介绍下怎么通过Spring Boot整合RabbitMQ。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120903.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • ipsec iptables_iptables -p

    ipsec iptables_iptables -piptablesiptables[-t表名]命令选项[链名][条件匹配][-j目标动作或跳转]-t表名可以省略,指定规则存放在哪个表中,默认为filter表用于存放相同功能的规则filter表:负责过滤功能能,nat表:网络地址转换功能mangle表:拆解报文做出修改并重新封装的功能raw表:关闭nat表上启用的连接追踪机制命令选项-A在…

    2022年10月7日
  • 如何修改host文件[通俗易懂]

    如何修改host文件[通俗易懂]一.host是什么:是一个没有扩展名的系统文件,可以用记事本等工具打开二.为何要修改host:1).就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。**2).加快域名解析** 对于要经常访问的网站,我们可以通过在Hosts中配置域名和IP的映射关系,提高域名解析速度。由于有了

    2022年10月12日
  • WordPress 插件漏洞被利用,近 20 万站点还没打补丁[通俗易懂]

    WordPress 插件漏洞被利用,近 20 万站点还没打补丁[通俗易懂]WordPress 插件漏洞被利用,近 20 万站点还没打补丁

    2022年4月21日
  • python modis数据拼接_python读取modis数据

    python modis数据拼接_python读取modis数据本期记录只上干活,废话不多说,主要是后面与HEG配合使用,实现一系列研究与反演操作。python环境:Python3.5.2+Pycharm模块包:pyhdf安装方法(命令行输入):pipinstallpyhdf一、获取hdf数据集:frompyhdf.SDimportSDHDF_FILR_URL=”E:\Persona_project\Py-Program\RS\modis\M…

    2022年10月30日
  • Spring cloud多模块开发下Feign的使用,以及@FeignClient注入bean找不到异常解决「建议收藏」

    Spring cloud多模块开发下Feign的使用,以及@FeignClient注入bean找不到异常解决「建议收藏」一、关于Feign在微服务架构开发是,我们常常会在一个项目中调用其他服务,其实使用SpringCloudRbbon就能实现这个需求,利用RestTemplate的请求拦截来实现对依赖服务的接口调用,但是实际项目中对服务依赖的调用可能不止于一处,往往一个接口会被多处调用,所以我们通常都会针对各个微服务自行封装一些客户端类来包装这些依赖服务的调用。这个时候我们会发现,由于R…

    2022年5月6日
  • 注册asp.net 4.0 到iis

    如果没有按照正常的先装iis后装.net的顺序,可以使用此命令重新注册一下:32位的Windows:1.运行->cmd2.cdC:\Windows\Microsoft.NET\Fra

    2021年12月24日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号