当前位置: 首页 > news >正文

docker rabbitmq_SpringBoot2.x系列教程64--消息队列之RabbitMQ安装及环境变量配置

SpringBoot2.x系列教程64--SpringBoot整合消息队列之RabbitMQ安装及环境变量配置

作者:一一哥

一. 准备安装包

Erlang-->http://www.erlang.org/downloads

RabbitMQ-->https://github.com/rabbitmq/rabbitmq-server/releases

二. 安装erlang

1. 双击图标开始安装

cdfaf064d6e5a2525577cce1e2129b77.png

0ab4cfdc7bf1f16b4d67e934aa3e104d.png

d591fdcff41af2534448aa26b7615f45.png

1e3c7d8b37964daa54125aea304c775d.png

f78d0fad4dc8624642a01b1ebf9c62a1.png

104209d862715887933dd5311105176c.png

2. 配置ErLang环境变量

  • 添加一个系统变量 ERLANG_HOME,设置为 Erlang 的安装目录,比如我的安装目录为: C:Program Fileserl9.3 ;
  • 然后在 Path 系统变量中加上 %ERLANG_HOME%bin

26da62352f60bb37ea9e90df83f22096.png

2af781f612eb3c4fcf9b688b5e4037e0.png

3. 验证

在cmd命令下输入:erl
能够返回版本号则表示安装与配置环境变量成功.

9bf15768c665eb073567efd80e815d45.png

三. 安装RabbitMQ

如果你要安装其它版本,注意版本要与ErLang对应: https://www.rabbitmq.com/which-erlang.html

1. 双击图标开始安装

405a8c6d6138bd94985de0bb830ee88e.png

8a7ac359f04b96d8c3398d33a4f91e99.png

507c6d9322b0d10908f937013009a601.png

878c97f0ef21abd714a775ffa5951b41.png

a623e5a8b13da5781c3b927a28546f20.png

2. 配置环境变量

  • 添加 一个系统变量RABBITMQ_SERVER,设置为RabbitMQ 的安装目录,如我放置的目录为C:Program FilesRabbitMQ Serverrabbitmq_server-3.7.5
  • 在 Path 系统变量末尾添加 %RABBITMQ_SERVER%sbin

3699a91d55a47e249372b1dc6206f11a.png

619840dea631e399313bf011578dd59a.png

3. 验证

打开cmd窗口,输入:rabbitmq-service

76320c0a1262bea3f260a03c7d3d8167.png


如有输出 以上 rabbitmq 命令的解释信息即表示安装成功.

4. 安装服务

可以把RabbitMQ服务器作为服务运行,打开一个cmd窗口(管理员),输入命令: rabbitmq-service install

02a546492d21cddbdd7758cbda11665a.png
#安装RabbitMQ服务
C:WINDOWSsystem32> rabbitmq-service install

C:WINDOWSsystem32> Service RabbitMQ added to system.

运行命令成功后我们可以查看一下服务是否已添加成功.

bae25d46af9db7d2aa646184f2b48456.png

5. 启动RabbitMQ服务

在cmd 窗口中输入命令:rabbitmq-service start

b0e4366f66b0b93c014bf3d800d4a5cf.png

6. 安装web管理插件

RabbitMQ 可以通用一个Web界面来进行管理.
在cmd命令窗口中输入命令:rabbitmq-plugins enable rabbitmq_management

#安装web管理组件
C:WINDOWSsystem32> rabbitmq-plugins enable rabbitmq_management

Enabling plugins on node rabbit@hwacer-hp:
rabbitmq_management
The following plugins have been configured:
  rabbitmq_management
  rabbitmq_management_agent
  rabbitmq_web_dispatch
Applying plugin configuration to rabbit@hwacer-hp...
The following plugins have been enabled:
  rabbitmq_management
  rabbitmq_management_agent
  rabbitmq_web_dispatch

set 3 plugins.
Offline change; changes will take effect at broker restart.

注意:

安装好后需要重启RabbitMQ,使用 stop 停止,然后再使用start 启动即可.

C:WINDOWSsystem32> rabbitmq-service stop
RabbitMQ 服务正在停止.........
RabbitMQ 服务已成功停止。

C:WINDOWSsystem32> rabbitmq-service start
RabbitMQ 服务正在启动 .
RabbitMQ 服务已经启动成功。

7. 开启web访问

重启之后我们访问 http://localhost:15672/ ,

登陆RabbitMQ 的web管理后台,默认用户密码为 guest/guest

重启之后可能需要过一会访问才能打开.

c32df8e29d72b5069e4e953d13d165d7.png

7f60a9bdf8f30398cf7ce22a9b73d3f1.png

至此,RabbitMQ安装配置完毕.

二. 基于Docker环境的RabbitMQ 安装(选修)

1. 概述

基于 Docker 方式来安装 RabbitMQ.

2. docker-compose.yml

version: '3.1'
services:
  rabbitmq:
    restart: always
    image: rabbitmq:management
    container_name: rabbitmq
    ports:
      - 5672:5672
      - 15672:15672
    environment:
      TZ: Asia/Shanghai
      RABBITMQ_DEFAULT_USER: rabbit
      RABBITMQ_DEFAULT_PASS: 123456
    volumes:
      - ./data:/var/lib/rabbitmq

3. RabbitMQ WebUI

3.1 访问地址

http://ip:15672

3.2 首页

8bb9abab945484999c8d24b7ff966128.png

3.3 Global counts

  • Connections: 连接数
  • Channels: 频道数
  • Exchanges: 交换机数
  • Queues: 队列数
  • Consumers: 消费者数

3.4 交换机页面

9027e0dfe5740bdc79b8ce93603a4d5a.png

3.5 队列页面

ee4435215e028843e2bfcb2b7a99c463.png
  • Name: 消息队列的名称,这里是通过程序创建的;
  • Features: 消息队列的类型,durable:true为会持久化消息;
  • Ready: 准备好的消息;
  • Unacked: 未确认的消息;
  • Total: 全部消息;
  • 备注: 如果都为 0 则说明全部消息处理完成.

相关文章:

  • before start of result set_ECMAScript 6 入门教程—Iterator 和 for...of 循环
  • 前端打印样式乱了_好程序员HTML5大前端分享web前端面试题集锦三
  • python第八周小测验_Python小测试_9
  • 初学者选黑卡还是微单_回答自测你是摄影初学者,还是进阶?
  • python创建随机数组_python随机数组如何生成?
  • java stringbuffer 空格_Java面试真题 |String 的特点是什么?它有哪些重要的方法?...
  • 想要导航提示进入页_一个值得全体信息流优化师和SEMer珍藏的落地页
  • python实现kmean算法_python实现K-means算法
  • python入门干货_Python干货整理,从入门说起(7.4)
  • jsp页面乱码_SpringMVC是如何实现作用域传值和页面跳转的?【源码解读】
  • python xy 2.7下载_pythonxy 安装
  • python判断火车票座位代码_python 火车票爬取代码
  • 面向对象程序设计_1. 面向对象程序设计概述
  • 与基础事务管理器的通信失败 存货申请_金九银十跳槽季,恶补分布式事务
  • python中利用字典加密字符串_用str.maketrans给字符串加密?
  • [ JavaScript ] 数据结构与算法 —— 链表
  • create-react-app项目添加less配置
  • exif信息对照
  • JavaScript学习总结——原型
  • Java编程基础24——递归练习
  • linux学习笔记
  • PAT A1017 优先队列
  • python_bomb----数据类型总结
  • Python中eval与exec的使用及区别
  • webgl (原生)基础入门指南【一】
  • 大数据与云计算学习:数据分析(二)
  • 第三十一到第三十三天:我是精明的小卖家(一)
  • 分享一个自己写的基于canvas的原生js图片爆炸插件
  • 简单数学运算程序(不定期更新)
  • 我建了一个叫Hello World的项目
  • 我与Jetbrains的这些年
  • 携程小程序初体验
  • 怎样选择前端框架
  • 《码出高效》学习笔记与书中错误记录
  • 浅谈sql中的in与not in,exists与not exists的区别
  • #《AI中文版》V3 第 1 章 概述
  • #mysql 8.0 踩坑日记
  • #免费 苹果M系芯片Macbook电脑MacOS使用Bash脚本写入(读写)NTFS硬盘教程
  • $ git push -u origin master 推送到远程库出错
  • $.ajax中的eval及dataType
  • (13)Latex:基于ΤΕΧ的自动排版系统——写论文必备
  • (Mac上)使用Python进行matplotlib 画图时,中文显示不出来
  • (附源码)springboot 房产中介系统 毕业设计 312341
  • (附源码)ssm捐赠救助系统 毕业设计 060945
  • (经验分享)作为一名普通本科计算机专业学生,我大学四年到底走了多少弯路
  • (力扣)循环队列的实现与详解(C语言)
  • (算法二)滑动窗口
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解
  • (转)C语言家族扩展收藏 (转)C语言家族扩展
  • ******之网络***——物理***
  • .halo勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .NET/C# 使用 #if 和 Conditional 特性来按条件编译代码的不同原理和适用场景
  • .netcore 如何获取系统中所有session_ASP.NET Core如何解决分布式Session一致性问题
  • .NET构架之我见
  • .net之微信企业号开发(一) 所使用的环境与工具以及准备工作