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

RabbitMQ最新版本4.0.2在Windows下的安装及使用

RabbitMQ 是一个开源的消息代理和队列服务器,提供可靠的消息传递和队列服务。它支持多种消息协议,包括 AMQP、STOMP、MQTT 等。本文将详细介绍如何在 Windows 系统上安装和使用最新版本的 RabbitMQ 4.0.2。

前言

RabbitMQ 是用 Erlang 语言开发的 AMQP(高级消息队列协议)的开源实现,广泛应用于消息队列、消息中间件等领域。它支持多种消息传递协议和多种客户端库,能够有效处理高并发的消息传递需求。 RabbitMQ 主要实现了 AMQP(高级消息队列协议)1.0 和 0-9-1 版本。然而,RabbitMQ 并不仅仅局限于 AMQP 协议,它还支持多种其他协议和扩展,使其能够适应更广泛的应用场景。

以下是一些 RabbitMQ 支持的协议和扩展:

1. AMQP 0-9-1

标准协议:RabbitMQ 最广泛使用的协议版本是 AMQP 0-9-1。这个版本的协议已经被许多客户端库支持,适用于大多数消息队列应用场景。

2. MQTT (Message Queuing Telemetry Transport)

轻量级协议:MQTT 是一种轻量级的消息协议,特别适合于物联网(IoT)设备和移动设备。RabbitMQ 通过插件支持 MQTT 协议,允许这些设备与 RabbitMQ 服务器进行通信。

3. STOMP (Simple Text Oriented Messaging Protocol)

简单文本协议:STOMP 是一种简单的文本消息协议,适用于多种编程语言和平台。RabbitMQ 通过插件支持 STOMP 协议,使得非 AMQP 客户端也可以与 RabbitMQ 交互。

4. Web Sockets

Web 通信:RabbitMQ 通过插件支持 Web Sockets,允许浏览器直接与 RabbitMQ 服务器进行实时通信。这使得 Web 应用可以实时接收消息。

5. RMQ (RabbitMQ Management HTTP API)

管理接口:RabbitMQ 提供了一个基于 HTTP 的管理 API,允许你通过 HTTP 请求管理 RabbitMQ 服务器,包括创建和删除队列、交换机、用户等操作。

6. MQTT over WebSockets

组合协议:RabbitMQ 支持通过 WebSockets 传输 MQTT 消息,使得 Web 应用可以直接使用 MQTT 协议与 RabbitMQ 通信。

7. AMQP 1.0

最新标准:虽然 AMQP 1.0 是最新的标准版本,但在实际应用中,AMQP 0-9-1 仍然更为常见。RabbitMQ 也支持 AMQP 1.0,但需要启用相应的插件。

erlang环境配置

RabbitMQ 是使用 Erlang 语言编写的,因此需要先安装 Erlang。RabbitMQ 4.0.2 需要 Erlang 26或更高版本。

安装erlang并配置环境变量

ERLANG_HOME   路径:D:\Program Files\Erlang OTP

双击系统变量path,点击“新建”,将%ERLANG_HOME%\bin加入到path中。

%ERLANG_HOME%\bin

验证erlang是否安装成功
win+R键,输入cmd,再输入erl,看到erlang版本号就说明erlang安装成功了。 

RabbitMQ 

 RabbitMQ最新版本下载:https://www.rabbitmq.com/docs/install-windows#installer

安装RabbitMQ

2.1 双击下载后的.exe文件,安装过程与erlang的安装过程相同。
2.2 安装RabbitMQ-Plugins
打开命令行cd,输入RabbitMQ的sbin目录。

然后输入以下命令进行安装

./rabbitmq-plugins enable rabbitmq_management

验证rabbitmq是否安装成功

输入 以下命令:

rabbitmqctl status

 

从提供的错误信息来看,问题主要集中在 Erlang 分布式通信失败上。具体来说,rabbitmqctl 工具能够连接到 epmd,并且 epmd 报告了正确的端口,但 Erlang 分布式通信未能成功建立。这通常是由于 Erlang Cookie 不匹配或主机名不一致导致的。 

解决办法

停止 RabbitMQ 服务(如果已启动)

检查 Erlang Cookie

确保 rabbitmqctl 工具和 RabbitMQ 服务器使用相同的 Erlang Cookie。

Erlang Cookie 文件通常位于:

Linux: /var/lib/rabbitmq/.erlang.cookie

Windows: %APPDATA%\RabbitMQ\.erlang.cookie

打开这两个文件,确保它们的内容完全相同。如果内容不同,请将它们同步。

比较下面两个文件夹下的.erlang.cookie文件内容,后来修改其中一个文件的内容,使两个文件内容一样。再次执行命令rabbitmqctl status,成功

C:\Windows\System32\config\systemprofile\.erlang.cookie
C:\User\{{电脑用户名}}\.erlang.cookie

再次查看服务状态

rabbitmqctl status

 打开浏览器,地址栏输入mq访问地址,即可看到管理界面的登陆页

http://127.0.0.1:15672 

输入用户名和密码,都为guest 进入主界面:

开启支持stomp协议

RabbitMQ 中启用对 STOMP (Simple Text Oriented Messaging Protocol) 的支持,你需要启用 rabbitmq_stomp 插件。

以下是详细的步骤:

启用 STOMP 插件: 打开命令行,进入 RabbitMQ 的 sbin 目录,然后执行以下命令来启用 STOMP 插件:

rabbitmq-plugins enable rabbitmq_stomp
rabbitmq-plugins enable rabbitmq_web_stomp

配置 STOMP: 你可以通过修改 RabbitMQ 的配置文件来设置 STOMP 连接的相关参数,通常这个文件是 rabbitmq.conf 或 advanced.config。在其中可以设置 STOMP 监听的端口等。

例如,如果你希望 STOMP 监听默认端口61613,可以在 rabbitmq.conf 中添加:

stomp.port = 61613

重启 RabbitMQ: 修改配置后,需要重启 RabbitMQ 服务以使更改生效。可以使用以下命令:

rabbitmqctl stop
rabbitmq-server start

验证 STOMP 是否启用: 可以通过使用 STOMP 客户端连接到 RabbitMQ 服务器来验证。确保可以在端口 61613 上成功连接。

完成以上步骤后,你的 RabbitMQ 应该已经能够支持 STOMP 协议。

可以使用以下命令验证 rabbitmq_stomp 插件是否已成功启用:

./rabbitmq-plugins list

其他资源

Otp 26.2.1 - Erlang/OTP

Release RabbitMQ 4.0.2 · rabbitmq/rabbitmq-server · GitHub

STOMP Over WebSocket

https://www.rabbitmq.com/docs/install-windows#configure

windows环境下安装RabbitMQ(超详细)_windows安装rabbitmq-CSDN博客

相关文章:

RabbitMQ最新版本4.0.2在Windows下的安装及使用

RabbitMQ 是一个开源的消息代理和队列服务器,提供可靠的消息传递和队列服务。它支持多种消息协议,包括 AMQP、STOMP、MQTT 等。本文将详细介绍如何在 Windows 系统上安装和使用最新版本的 RabbitMQ 4.0.2。 前言 RabbitMQ 是用 Erlang 语言开发的 AMQP&…...

东方博宜1180 - 数字出现次数

问题描述 有 50 个数( 0∼19),求这 50个数中相同数字出现的最多次数为几次? 输入 50 个数字。 输出 1 个数字(即相同数字出现的最多次数)。 样例 输入 1 10 2 0 15 8 12 7 0 3 15 0 15 18 16 7 17 16 9 …...

LeetCode: 3274. 检查棋盘方格颜色是否相同

一、题目 给你两个字符串 coordinate1 和 coordinate2,代表 8 x 8 国际象棋棋盘上的两个方格的坐标。   以下是棋盘的参考图。   如果这两个方格颜色相同,返回 true,否则返回 false。   坐标总是表示有效的棋盘方格。坐标的格式总是先…...

datax编译并测试

mvn -U clean package assembly:assembly -Dmaven.test.skiptrue 参看:DataX导数的坑_datax插件初始化错误, 该问题通常是由于datax安装错误引起,请联系您的运维解决-CSDN博客 两边表结构先创建好: (base) [rootlnpg bin]# pwd /db/DataX-datax_v20230…...

2-133 基于matlab的粒子群算法PSO优化BP神经网络

基于matlab的粒子群算法PSO优化BP神经网络,BP神经网络算法采用梯度下降算法,以输出误差平方最小为目标,采用误差反向传播,训练网络节点权值和偏置值,得到训练模型。BP神经网络的结构(层数、每层节点个数)较复杂时&…...

复盘秋招22场面试(四)形势重新评估与后续措施

连续好多天睡不着觉,经常晚上起来好几次,到现在还是没offer。之前有个校友在抖音留言说我能收到这么多面试说明简历没问题,这么多一面挂,说明我技术面有问题。确实有一些是kpi面,但是我复盘之后我发现也没有那么多kpi面…...

揭开C++ STL的神秘面纱之string:提升编程效率的秘密武器

目录 🚀0.前言 🚈1.string 构造函数 🚝1.1string构造函数 🚝1.2string拷贝构造函数 🚈2.string类的使用 🚝2.1.查询元素个数或空间 返回字符串中有效字符的个数:size lenth 返回字符串目…...

用人工智能,应该怎么掏钱?

人工智能(AI)服务的发展正快速改变企业和开发者的工作方式,不仅提供了强大的数据分析和预测能力,还涵盖了从自然语言处理到图像识别的广泛功能。然而,理解AI服务的支付模式对成本控制和合理资源分配至关重要&#xff0…...

【Axure高保真原型】移动案例

今天和大家分享多个常用的移动案例的原型模板,包括轮盘滑动控制元件移动、页面按钮控制元件移动、鼠标单击控制元件移动、元件跟随鼠标移动、鼠标拖动控制元件移动、键盘方向键控制元件移动,具体效果可以点击下方视频观看或打开下方预览地址查看哦 【原…...

Bytebase 3.0.0 - AI 助手全面升级

🚀 新功能 SQL 编辑器里的 AI 助手:支持将自然语言转换成 SQL 语句,解释 SQL 代码,还能帮助发现潜在问题。 支持 SQL Server DML 语句一键回滚。支持 MariaDB 的在线大表变更。新的 SQL 审核规则: 要求为 MySQL 设置 …...

php基础:数据类型、常量、字符串

语法补充: 每句必须以;结尾 echo:能输出一个以上的字符串,英文逗号隔开 print:只能输出一个字符串并返回1 1.数据类型 php可以自动识别数据类型。 php有5种数据类型:String(字符串&#xf…...

Discuz发布原创AI帖子内容生成:起尔 | AI原创帖子内容生成插件开发定制

Discuz发布原创AI帖子内容生成:起尔 | AI原创帖子内容生成插件开发定制 在当今互联网快速发展的时代,内容创作成为了网站运营、社交媒体管理和个人博客维护不可或缺的一部分。然而,高质量内容的创作往往耗时耗力,特别是对于需要频…...

el-table在某些条件下禁止选中

el-table在某些条件下禁止选中 废话不多说直接上代码 HTML部分 <el-table v-loading"loading" :data"wmsShipmentOrderList" ref"multipleTable" select"handleSelect" selection-change"handleSelectionChange">&…...

深入探讨 HTTP 请求方法:GET、POST、PUT、DELETE 的实用指南

文章目录 引言GET 方法POST 方法PUT 方法DELETE 方法小结适用场景与特点总结最佳实践 在 API 设计中的重要性 引言 HTTP 协议的背景&#xff1a;介绍 HTTP&#xff08;超文本传输协议&#xff09;作为互联网的基础协议&#xff0c;自 1991 年发布以来&#xff0c;成为客户端和…...

深度学习:元学习(Meta-Learning)详解

元学习&#xff08;Meta-Learning&#xff09;详解 元学习&#xff0c;也称为“学会学习”&#xff0c;是机器学习中的一个重要子领域&#xff0c;旨在开发能够快速适应新任务或环境的模型&#xff0c;即使这些任务的可用数据非常有限。元学习的核心思想是通过经验学习如何学习…...

uniapp展示本地pdf + 自定义标题

概要 本文主要讲述uniapp打包的Android项目如何展示本地的PDF文件&#xff0c;并设置标题 需求分析 1、因为是打包的Android项目展示本地的PDF文件&#xff0c;首先需要拿到这个本地的PDF文件路径 2、如何在uniapp的vue页面中展示PDF&#xff0c;因为没有直接展示PDF文件的…...

国标GB28181设备管理软件EasyGBS国标GB28181-2016平台更换SQLite数据库的步骤

在当今数字化、智能化的时代&#xff0c;视频监控系统已成为各行各业不可或缺的一部分。国标GB28181设备管理软件EasyGBS&#xff0c;作为一款功能强大的国标视频云服务平台&#xff0c;凭借其广泛的应用场景和卓越的性能&#xff0c;在智慧城市、智慧园区、智慧交通、智慧医疗…...

C++基础与实用技巧第三节:内存管理与性能优化

第二章&#xff1a;C基础与实用技巧 第三节&#xff1a;内存管理与性能优化 1. 动态内存的管理策略与技巧 动态内存管理是C编程的核心部分之一&#xff0c;合理管理内存可以极大提高程序的性能和稳定性。在C中&#xff0c;动态内存的分配和释放通常使用new和delete运算符&am…...

【移动应用开发】界面设计(二)实现水果列表页面

续上一篇博客 【移动应用开发】界面设计&#xff08;一&#xff09;实现登录页面-CSDN博客 目录 一、采用ViewBinding实现一个RecyclerView 1.1 在app/build.gradle中添加recyclerview依赖&#xff0c;并打开viewBinding &#xff08;1&#xff09;在app/build.gradle中添加…...

基于Multisim的四人智力竞赛抢答器设计与仿真

1&#xff09;设计任务 设计一台可供 4 名选手参加比赛的智力竞赛抢答器。 用数字显示抢答倒计时间&#xff0c;由“9”倒计到“0”时&#xff0c;无人抢答&#xff0c;蜂鸣器连续响 1 秒。选手抢答时&#xff0c;数码显示选手组号&#xff0c;同时蜂鸣器响 1 秒&#xff0c;倒…...

终极LxgwWenKai字体配置指南:如何为VSCode和IDEA打造完美中文编程体验

终极LxgwWenKai字体配置指南&#xff1a;如何为VSCode和IDEA打造完美中文编程体验 【免费下载链接】LxgwWenKai LxgwWenKai: 这是一个开源的中文字体项目&#xff0c;提供了多种版本的字体文件&#xff0c;适用于不同的使用场景&#xff0c;包括屏幕阅读、轻便版、GB规范字形和…...

手机拍照为啥总感觉差点意思?聊聊藏在ISP里的那些‘魔法’算法(从RawNR到TNR)

手机拍照为啥总感觉差点意思&#xff1f;聊聊藏在ISP里的那些‘魔法’算法&#xff08;从RawNR到TNR&#xff09; 每次看到别人用同款手机拍出的大片&#xff0c;再看看自己相册里灰蒙蒙的夜景照&#xff0c;是不是总觉得少了点什么&#xff1f;这背后其实藏着一整套名为ISP&am…...

计算机组成原理实验避坑指南:存储器地址映射常见错误及解决方法

计算机组成原理实验避坑指南&#xff1a;存储器地址映射常见错误及解决方法 第一次在Proteus里搭建存储器系统时&#xff0c;看着密密麻麻的地址线和片选信号&#xff0c;我对着实验指导书发呆了半小时——明明按照图示连接了所有线路&#xff0c;可写入RAM的数据总是莫名其妙出…...

lite-avatar形象库入门:如何查找、预览并下载心仪的数字人形象

lite-avatar形象库入门&#xff1a;如何查找、预览并下载心仪的数字人形象 1. 数字人形象库简介 在数字人项目开发中&#xff0c;一个合适的虚拟形象往往能让用户体验大幅提升。lite-avatar形象库正是为解决这一需求而生的专业资源库。 这个基于HumanAIGC-Engineering/LiteA…...

探索Unity全功能的开源方案:UniHacker跨平台功能扩展工具深度指南

探索Unity全功能的开源方案&#xff1a;UniHacker跨平台功能扩展工具深度指南 【免费下载链接】UniHacker 为Windows、MacOS、Linux和Docker修补所有版本的Unity3D和UnityHub 项目地址: https://gitcode.com/GitHub_Trending/un/UniHacker Unity作为游戏开发领域的行业标…...

Spring Boot 3.2项目实战:5分钟搞定Tomcat虚拟线程配置,让你的接口吞吐量翻倍

Spring Boot 3.2虚拟线程实战&#xff1a;Tomcat配置优化与性能飞跃指南 当你的电商大促接口突然面临每秒上万请求&#xff0c;或者文件上传服务在高并发下响应缓慢时&#xff0c;传统线程池往往成为性能瓶颈。Spring Boot 3.2与Java 21的虚拟线程组合&#xff0c;正在重新定义…...

给嵌入式新手的保姆级指南:JTAG、SWD、J-Link、ST-Link到底怎么选?

嵌入式开发调试工具全指南&#xff1a;从JTAG到SWD的实战选择策略 第一次拿到STM32开发板时&#xff0c;看着板子上那排密密麻麻的调试接口针脚&#xff0c;我盯着J-Link和ST-Link这两个名词发了半小时呆——它们到底有什么区别&#xff1f;为什么有的教程用JTAG接线&#xff0…...

比较好的金线包封胶制造商推荐几家

嘿&#xff0c;朋友们&#xff01;在半导体封装领域&#xff0c;金线包封胶就像是芯片的“贴身保镖”&#xff0c;保护着纤细的金线&#xff0c;让芯片能够稳定工作。今天咱们就来聊聊比较好的金线包封胶制造商&#xff0c;看看哪家更值得你选择。一、东莞市汉思新材料科技有限…...

别再只看灰度图了!用功率谱给你的AI生成图像质量把把脉

功率谱分析&#xff1a;AI生成图像质量评估的隐藏利器 当我们在评估AI生成的图像时&#xff0c;常常会陷入主观判断的陷阱——肉眼观察虽然直观&#xff0c;但缺乏量化标准。而功率谱分析这一源自信号处理的技术&#xff0c;正悄然成为AI图像质量评估领域的一把精准尺子。不同于…...

AI结对编程:借助快马平台智能生成qclaw官网的AI功能模块

最近在开发qclaw官网时&#xff0c;尝试用AI辅助完成了一个合同条款分析功能&#xff0c;整个过程比想象中顺畅很多。这个功能的核心是让用户输入合同文本后&#xff0c;自动评估风险等级并给出提示。下面分享下具体实现思路和与AI协作的实践经验。 功能设计要点 首先明确这个…...