RabbbitMQ篇(环境搭建 - 下载 安装)(持续更新迭代)
目录
一、Windows
1. 下载安装程序
2. 安装配置erlang
3. 安装rabbitMQ
4. 验证
二、Linux
1. 下载rpm包
1.1. 下载Erlang的rpm包
1.2. 下载socat的rpm包
1.3. 下载RabbitMQ的rpm包
2. 安装
2.1. 安装Erlang
2.2. 安装socat
2.3. 安装RabbitMQ
3. 启动RabbitMQ服务
4. RabbitMQWeb管理界面及授权操作
5. 卸载
6. 管理界面
三、Mac
1. brew 命令安装Mac安装 RabbitMQ
2. Mac 后台启动 RabbitMQ
3. Rabbit 用户操作
4. 下载 RabbitMQ 源文件安装 RabbitMQ
四、Docker
1. 单机部署
1.1. 下载镜像
1.2. 安装MQ
一、Windows
1. 下载安装程序
rabbitMQ安装程序下载路径:https://www.rabbitmq.com/install-windows.html
拉到页面中间找到如下点击:
erlang环境安装程序下载路径:Downloads - Erlang/OTP
2. 安装配置erlang
点击刚才下载的otp_win64_23.0.exe。如果对于安装路径没有特殊要求的话,就一路next直至安装成功即可,默
认安装路径为:C:\Program Files\erl-23.0。
接下来配置环境变量,常规操作,新建系统变量-键入变量名ERLANG_HOME,键入变量值:erlang安装路径。
如下图:
然后添加系统path路径中,添加 : %ERLANG_HOME%\bin
然后打开cmd,输入erl,看到我们的erlang版本号,就说明安装成功了
3. 安装rabbitMQ
双击我们刚才下载的rabbitmq-server-3.8.5程序,next,install即可,此处需要注意,如果要自定义安装路径的
话,路径中最好不要存在中文,会出现错误。
安装完成之后,需要我们激活rabbitmq_management
打开cmd,进到sbin目录下,运行命令
rabbitmq-plugins enable rabbitmq_management
执行成功之后会看到如下图:三个插件被启动
4. 验证
上面的命令执行成功之后,我们就可以通过http://localhost:15672来访问web端的管理界面
初始可以通过用户名:guest 密码guest来登录。
这就说明我们安装成功了。
分享几条命令:
net start RabbitMQ 启动
net stop RabbitMQ 停止
rabbitmqctl status 查看状态
二、Linux
1. 下载rpm包
1.1. 下载Erlang的rpm包
RabbitMQ是采用 Erlang语言开发的,所以系统环境必须提供 Erlang环境,因此首先需要是安装 Erlang 注:
Erlang环境一定要与RabbitMQ版本匹配:
Erlang下载地址:(根据自身需求及匹配关系,下载对应rpm包)
https://www.rabbitmq.com/releases/erlang/
1.2. 下载socat的rpm包
rabbitmq安装依赖于socat,所以也需要下载socat
socat下载地址:http://repo.iotti.biz/CentOS/7/x86_64/socat-1.7.3.2-5.el7.lux.x86_64.rpm
1.3. 下载RabbitMQ的rpm包
RabbitMQ下载地址:(注意:不要忘记和Erlang版本匹配)
https://www.rabbitmq.com/download.html
最终:我们就回发现上面的三个rpm包下载成功了:
下载好之后,我们就可以在虚拟机中进行安装并启动RabbitMQ了:
2. 安装
2.1. 安装Erlang
首先将下载好的文件上传到虚拟机服务器,创建一个文件夹用来存放该Erlang文件
mkdir -p /usr/rabbitmq
然后切换到/usr/rabbitmq
目录,解压安装erlang
# 解压
解压命令:rpm -Uvh erlang-23.2.7-2.el7.x86_64.rpm
# 安装
安装命令:yum install -y erlang
安装完成后输入如下指令查看版本号:
查看版本号命令:erl -v
2.2. 安装socat
注意:在安装rabbitmq之前需要先安装socat,否则,报错。
同理先把socat的rpm安装包上传到虚拟机服务器对应的rabbitmq目录下:
解压socat的rpm安装包:
# 解压
解压命令:rpm -Uvh socat-1.7.3.2-1.el6.lux.x86_64.rpm
# 解压完之后,安装即可
安装命令:yum install -y socat
2.3. 安装RabbitMQ
上面的两个安装好之后,就可以解压PabbitMQ的rpm安装包进行解压安装了:
# 解压命令:
rpm -Uvh rpm -ivh rabbitmq-server-3.8.1-1.el7.noarch.rpm
# 安装命令:yum install -y rabbitmq-server
3. 启动RabbitMQ服务
也就是说上面的三个全部安装完成之后,那么我们就可以启动RabbitMQ服务了:
# 启动rabbitmq
命令:systemctl start rabbitmq-server
# 查看rabbitmq状态
命令:systemctl status rabbitmq-server
注意:再使用启动rabbitmq命令的时候,要先通过命令把防火墙给关闭,不关闭的话输入启动rabbitmq命令会出
现霸屏的问题。
关闭防火墙命令:systemctl stop firewalld.service
关闭之后就可以输入启动rabbitmq和查看rabbitmq状态的命令了:
显示active
则表示服务安装并启动成功
其他命令:
# 设置rabbitmq服务开机自启动
systemctl enable rabbitmq-server# 关闭rabbitmq服务
systemctl stop rabbitmq-server# 重启rabbitmq服务
systemctl restart rabbitmq-server
4. RabbitMQWeb管理界面及授权操作
默认情况下,rabbitmq没有安装web端的客户端软件,需要安装才可以生效
# 打开RabbitMQWeb管理界面插件命令:
rabbitmq-plugins enable rabbitmq_management
然后我们打开浏览器,访问服务器公网ip:15672
(注意打开阿里云安全组以及防火墙的15672端口,我们刚才
上面已经通过命令关闭防火墙了),就可以看到管理界面 :
访问格式:虚拟机ip:15672/
输入默认账号密码: guest , guest,guest用户默认不允许远程连接。
还可以自定义账户和密码:
增加自定义账号
添加管理员账号密码:rabbitmqctl add_user admin admin
分配账号角色:rabbitmqctl set_user_tags admin administrator
修改密码:rabbitmqctl change_password admin 密码
查看用户列表:rabbitmqctl list_users
使用新账号登录,成功登录界面
管理界面标签页介绍:
overview:概览
- connections:无论生产者还是消费者,都需要与RabbitMQ建立连接后才可以完成消息的生产和消费,在这里可以查看连接情况
- channels:通道,建立连接后,会形成通道,消息的投递获取依赖通道。
- Exchanges:交换机,用来实现消息的路由
- Queues:队列,即消息队列,消息存放在队列中,等待消费,消费后被移除队列。
端口:
- 5672:rabbitMq的编程语言客户端连接端口
- 15672:rabbitMq管理界面端口
- 25672:rabbitMq集群的端口
5. 卸载
rpm -qa | grep rabbitmq
rpm -e rabbitmq-server
6. 管理界面
添加用户
如果不使用guest,我们也可以自己创建一个用户:
创建Virtual Hosts
设置权限
三、Mac
一般来说,安装分为两种方式:
- 下载 RabbitMQ 源文件,解压源文件之后进行安装。
- 通过 brew 命令安装。在这里,推荐使用 brew 来安装,非常强大的 Mac 端包管理工具。
1. brew 命令安装Mac安装 RabbitMQ
1、安装 erlang
# 终端输入brew install erlang
2、安装 rabbitmq
# 终端输入brew install rabbitmq
3、配置 RabbitMQ 环境变量
# 终端输入vi ~/.bash_profile
复制
#添加配置 终端输入
vim ~/.bash_profile
export RABBIT_HOME=/usr/local/Cellar/rabbitmq/3.12.12
export PATH=$PATH:$RABBIT_HOME/sbin
#更新配置 终端输入
source ~/.bash_profile
4、安装 RabiitMQ 的可视化监控插件
# 终端输入sudo sbin/rabbitmq-plugins enable rabbitmq_management
2. Mac 后台启动 RabbitMQ
1、后台启动
# 终端输入sudo rabbitmq-server -detached
2、查看状态
# 终端输入
sudo rabbitmqctl status
3、访问可视化监控插件的界面
# 浏览器内输入
http://localhost:15672
默认的用户名密码都是 guest,登录后可以在 Admin 那一列菜单内添加自己的用户
4、后台关闭
# 终端输入
rabbitmqctl stop
3. Rabbit 用户操作
1、添加 Rabbit用户
# 用户角色权限:
超级管理员(administrator):可登陆管理控制台,可查看所有的信息,并且可以对用户,策略(policy)进行操
作。
监控者(monitoring):可登陆管理控制台,同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,
磁盘使用情况等)
策略制定者(policymaker):可登陆管理控制台, 同时可以对policy进行管理。但无法查看节点的相关信息(上图
红框标识的部分)。
普通管理者(management):仅可登陆管理控制台,无法看到节点信息,也无法对策略进行管理。
其他:无法登陆管理控制台,通常就是普通的生产者和消费者。
2、创建 Virtual Hosts
3、选中 Admin 用户设置权限
4. 下载 RabbitMQ 源文件安装 RabbitMQ
下载地址Generic Binary Build ("Generic UNIX Build") — RabbitMQ
备用下载地址:备用下载地址
文件目录下,分别执行以下命令 ※注意分别执行
xz -d rabbitmq-server-generic-unix-3.12.12.tar.xz
tar xvf rabbitmq-server-generic-unix-3.12.12.tar -C /home/esaas/rabbitmq
执行以下命令编辑 rabbitmq.env.conf
vim etc/rabbitmq/rabbitmq.env.conf
加入以下配置。将目录替换为自己的目录。并在rabbitmq_server-3.12.12 下创建data目录
#node name
NODENAME=rabbit
#data dir
MNESIA_BASE=/你的目录/rabbitmq_server-3.12.12/data
编辑配置文件rabbitmq.conf
vim etc/rabbitmq/rabbitmq.conf
加入以下配置。将目录替换为自己的目录。并在rabbitmq_server-3.12.12 下创建logs目录
#listen port
listeners.tcp.default = 5672
#log dir
log.dir =/你的目录/rabbitmq_server-3.12.12/logs
#open remote request
loopback_users = none
配置环境变量
sudo vim /etc/profile
加入以下内容
export RABBIT_MQ=/home/esaas/rabbitmq/rabbitmq_server-3.12.12
export PATH=$PATH:$RABBIT_MQ/sbin
使环境变量生效
source /etc/profile
安装后和以上相同操作,运行RabbitMQ
四、Docker
1. 单机部署
我们在Centos7虚拟机中使用Docker来安装。
1.1. 下载镜像
方式一:在线拉取
docker pull rabbitmq:3-management
方式二:从本地加载
上传到虚拟机中后,使用命令加载镜像即可:
docker load -i mq.tar
1.2. 安装MQ
执行下面的命令来运行MQ容器:
docker run \-e RABBITMQ_DEFAULT_USER=ylh \-e RABBITMQ_DEFAULT_PASS=20020630 \--name mq \--hostname mq1 \-p 15672:15672 \-p 5672:5672 \-d \rabbitmq:3-management
访问15672端口http://192.168.205.128:15672
输入账号密码就能进入RabbitMQ的首页
挂载数据据
docker run \-e RABBITMQ_DEFAULT_USER=wclass \-e RABBITMQ_DEFAULT_PASS=wclass \-v mq-plugins:/plugins \--name mq \--hostname mq1 \-p 15672:15672 \-p 5672:5672 \-d \rabbitmq:3-management
相关文章:

RabbbitMQ篇(环境搭建 - 下载 安装)(持续更新迭代)
目录 一、Windows 1. 下载安装程序 2. 安装配置erlang 3. 安装rabbitMQ 4. 验证 二、Linux 1. 下载rpm包 1.1. 下载Erlang的rpm包 1.2. 下载socat的rpm包 1.3. 下载RabbitMQ的rpm包 2. 安装 2.1. 安装Erlang 2.2. 安装socat 2.3. 安装RabbitMQ 3. 启动RabbitMQ服…...

C++基础补充(02)C++其他控制语句break continue goto等
文章目录 1. break2. continue 语句3. goto 语句goto的存在 4. 跳出多重循环4.1 goto 直接跳转4.2 C11及其后版本的 return 语句4.3 使用标志变量 在C中,控制语句用于管理程序的执行流程。常见有 break、continue 和 goto。 1. break break语句主要用于在循环或者s…...
决策树中联合概率分布公式解释说明
学习决策树时书本中有一公式 7-3 是: P ( X x i , Y y j ) p i j ( i 1 , 2 , … , m , j 1 , 2 , … , n ) P(X x_i, Y y_j) p_{ij} \quad (i 1, 2, \dots, m, \ j 1, 2, \dots, n) P(Xxi,Yyj)pij(i1,2,…,m, j1,2,…,n) 这个公式表示的是随机变…...

计算机毕业设计 农场投入品运营管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解
博主介绍:✌从事软件开发10年之余,专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ 🍅文末获取源码联系🍅 👇🏻 精…...

php email功能实现:详细步骤与配置技巧?
php email发送功能详细教程?如何使用php email服务? 无论是用户注册、密码重置,还是订单确认,电子邮件都是与用户沟通的重要手段。AokSend将详细介绍如何实现php email功能,并提供一些配置技巧,帮助你更好…...

MapBox Android版开发 6 关于Logo
MapBox Android版开发 6 关于Logo Logo的显示查看源码及思路(Logo)第一步第二步 隐藏Logo示例查看源码及思路(Info)第一步第二步 隐藏Logo和Info示例 看到有网友留言问如何移除Logo,今天看了下V9源码,发现M…...

2024年房市
24年8月15日,国家统计局公布,“7月末,商品房待售面积73926万平方米”。(原文链接:https://www.stats.gov.cn/sj/zxfb/202408/t20240815_1955982.html) 7.39亿平方存量商品房,估价均价1万每平,总价约&am…...
index索引
index索引: create index 【1】on 【2】(【3】) 1为索引名,通常为id_表名_列名。2为表名。3为列名。 CREATE INDEX id_account_id ON account(id); -- 根据id创建索引 CREATE INDEX id_account_idname on account(id,name); -- 创建组合索引 索…...

理解互联网链路:从本地ISP到Tier 1 ISP运营商
1. 互联网服务提供商(ISP) 互联网服务提供商(ISP)是指提供互联网接入服务的公司或组织。它们负责将用户连接到互联网,并提供相关的服务,如电子邮件、网站托管和其他在线服务。ISP可以分为不同的层级&#…...

基于元神操作系统实现NTFS文件操作(三)
1. 背景 本文主要介绍DBR的读取和解析,并提供了基于元神操作系统的实现代码。由于解析DBR的目的是定位到NTFS磁盘分区的元文件$Root进行文件操作,所以只解析了少量的部分,其它部分可以参考相关文档进行理解。 DBR存在于磁盘分区的第一个扇区…...

深度学习与数学归纳法
最近发现,深度学习可以分为两个主要的阶段,分别是前向推理以及反向传播,分别对应着网络的推理和参数训练两个步骤。其中推理有时候也称为归纳推理。 在做参数训练的时候,本质上是在利用历史数据求网络参数的先验分布; …...

《Linux从小白到高手》理论篇(六):Linux软件安装一篇通
List item 本篇介绍Linux软件安装相关的操作命令,看完本文,有关Linux软件安装相关操作的常用命令你就掌握了99%了。 Linux软件安装 RPM RPM软件的安装、删除、更新只有root权限才能使用;查询功能任何用户都可以操作;如果普通用…...

【Spring】运行Spring Boot项目,请求响应流程分析以及404和500报错
1. 运行项目 import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Appl…...

②EtherCAT转Modbus485RTU网关多路同步高速采集无需编程串口服务器
EtherCAT转Modbus485RTU网关多路同步高速采集无需编程串口服务器https://item.taobao.com/item.htm?ftt&id798036415719 EtherCAT 串口网关 EtherCAT 转 RS485 (接上一章) 自由协议通信步骤 (以MS-A2-1041为例) 接收与…...
matlab-对比两张图片的HSV分量的差值并形成直方图
%对比两张图片的HSV分量的差值并形成直方图,改个路径就能用,图片分辨率要一致 close all; clear all; clc; I1imread(E:\test\resources\image\1.jpg); I2imread(E:\test\resources\image\2.jpg); HSV1 rgb2ntsc(I1); HSV2 rgb2ntsc(I2); %HSV,HSV 代…...

微服务SpringGateway解析部署使用全流程
官网地址: Spring Cloud Gateway 目录 1、SpringGateway简介 1、什么是网关 2、为什么用网关【为了转发】 2、应用: 1.启动nacos 2.创建网关项目 3.网关配置1 4.网关配置2【了解】 5.过滤器配置【了解】 1、SpringGateway简介 核心功能有三个&…...

Solidity 存储和内存管理:深入理解与高效优化
在 Solidity 中,存储和内存管理是编写高效智能合约的关键组成部分。合约执行的每一步操作都可能涉及到数据的存储和读取,而这些操作对 gas 的消耗有很大影响。因此,理解 Solidity 的存储模型以及如何优化数据的管理对于合约的安全性、性能和成…...

机器学习篇-day02-KNN算法实现鸢尾花模型和手写数字识别模型
一. KNN简介 KNN思想 K-近邻算法(K Nearest Neighbor,简称KNN)。比如:根据你的“邻居”来推断出你的类别 KNN算法思想:如果一个样本在特征空间中的k 个最相似的样本中的大多数属于某一个类别,则该样本也属…...

【C++】STL--vector
1.vector的介绍 我们先来看看vector的文档介绍,实际中我们只要熟悉相关接口就好了。 成员函数 使用STL的三个境界:能用,明理,能扩展 ,那么下面学习vector,我们也是按照这个方法去学习 2 vector的使用 v…...
Java使用Redis的详细教程
Redis是一个基于内存的key-value结构数据库,即非关系型数据库,具有高性能、丰富的数据类型、持久化、高可用性和分布式等特点。在Java项目中,Redis通常用于缓存、分布式锁、计数器、消息队列和排行榜等场景。以下是在Java中使用Redis的详细教…...
uniapp 对接腾讯云IM群组成员管理(增删改查)
UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...
基于大模型的 UI 自动化系统
基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...
k8s从入门到放弃之Ingress七层负载
k8s从入门到放弃之Ingress七层负载 在Kubernetes(简称K8s)中,Ingress是一个API对象,它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress,你可…...

【入坑系列】TiDB 强制索引在不同库下不生效问题
文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...

【网络安全产品大调研系列】2. 体验漏洞扫描
前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...

什么是库存周转?如何用进销存系统提高库存周转率?
你可能听说过这样一句话: “利润不是赚出来的,是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业,很多企业看着销售不错,账上却没钱、利润也不见了,一翻库存才发现: 一堆卖不动的旧货…...

Map相关知识
数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...

用机器学习破解新能源领域的“弃风”难题
音乐发烧友深有体会,玩音乐的本质就是玩电网。火电声音偏暖,水电偏冷,风电偏空旷。至于太阳能发的电,则略显朦胧和单薄。 不知你是否有感觉,近两年家里的音响声音越来越冷,听起来越来越单薄? —…...

七、数据库的完整性
七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...

VisualXML全新升级 | 新增数据库编辑功能
VisualXML是一个功能强大的网络总线设计工具,专注于简化汽车电子系统中复杂的网络数据设计操作。它支持多种主流总线网络格式的数据编辑(如DBC、LDF、ARXML、HEX等),并能够基于Excel表格的方式生成和转换多种数据库文件。由此&…...