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

RabbitMQ安装详细教程

(一)在Windows系统上安装Erlang的步骤如下:

  • 打开Erlang的官方下载页面,选择适合你的Windows系统的版本进行下载。

  • 下载完成后,双击运行下载的.exe文件,进入Erlang的安装向导。

  • 在安装向导中,按照提示进行操作即可,接受协议,选择安装路径,再点击下一步。

  • 点击 install 开始安装。安装完成后点击 finish 完成安装。

注意:安装完成后请确保你的系统已经允许Erlang通过防火墙。

  1. RabbitMQ的默认登录用户名和密码都是guest

(二)在浏览器中打开RabbitMQ的管理界面的步骤如下:

  • 在命令行中执行命令 rabbitmq-plugins enable rabbitmq_management。这个命令会启用RabbitMQ的网页管理功能。

  • 执行完上述命令后,打开你的浏览器,在地址栏输入 http://localhost:15672/,然后按Enter键。

  • 这时候你应该可以看到RabbitMQ的登录页面,使用默认的用户名guest和密码guest进行登录,就可以看到RabbitMQ的管理界面了。

(三)在Linux系统上安装Erlang的步骤如下:

首先,需要根据你的Linux发行版选择相应的安装方式。

  • 对于Ubuntu/Debian系统,可以直接使用apt-get命令进行安装,步骤如下:
     sudo apt-get updatesudo apt-get install erlang
  • 对于Fedora系统,可以使用yum命令安装,步骤如下:
     sudo yum install erlang

安装完成后,你可以通过输入erl命令并回车,如果能看到Erlang的命令行交互环境,那么就表示Erlang安装成功了。

(四)RabbitMQ主要使用的五个默认端口如下:

  • AMQP协议端口:5672

  • AMQP/SSL端口:5671

  • MQTT端口:1883

  • MQTT/SSL端口:8883

  • 管理插件端口:15672

(五)RabbitMQ的管理界面功能主要包括:

  • 查看和管理连接、通道、交换器、队列:你可以查看当前所有的连接、通道、交换器、队列,也可以添加、删除和编辑这些内容。

  • 查看和管理用户和权限:你可以添加、删除和编辑用户,以及设置用户的权限。

  • 查看系统的状态和节点的信息:你可以查看系统的各种状态信息,如内存使用情况、磁盘使用情况等,也可以查看节点的运行状态等信息。

  • 发送和接收消息:你可以发送消息到队列,也可以从队列接收消息。

(六)为了更加清楚地理解RabbitMQ的安装和使用过程,下面我将给出一个在Linux系统中安装和使用RabbitMQ的实践样例。

注意:自己搭建Mq需了解关于队列的基本原理。

第一步:安装Erlang

因为RabbitMQ是用Erlang开发的,所以先需要安装Erlang。在Ubuntu系统中,可以使用以下命令来安装Erlang:

bash

sudo apt-get update
sudo apt-get install erlang

第二步:安装RabbitMQ

使用以下命令在Ubuntu中安装RabbitMQ Server:

bash

sudo apt-get install rabbitmq-server

安装完成后可以使用下面的命令来启动RabbitMQ Server:

bash

sudo service rabbitmq-server start

第三步:开启RabbitMQ的管理插件

使用以下命令来启动RabbitMQ的管理插件:

bash

sudo rabbitmq-plugins enable rabbitmq_management

第四步:访问RabbitMQ的管理界面

打开浏览器,访问http://localhost:15672/,就可以看到RabbitMQ的管理界面了。默认的用户名和密码都是guest

RabbitMQ的管理界面主要用于管理和监控RabbitMQ服务器的运行状态。你可以使用管理界面进行以下操作:

  • 管理和监控连接,通道,消费者,队列,交换器和绑定。

  • 管理和监控vhost,用户和权限。

  • 查看RabbitMQ服务器的状态和节点信息。

  • 查看和管理队列的消息。

  • 发送测试消息等。

例如,我们可以创建一个新的队列:点击左侧的"Queues",然后在右侧点击"Add a new queue",在弹出的窗口中输入队列的名字,然后点击"Add queue"。就这样,我们就创建了一个新的队列。

在RabbitMQ的管理界面中创建新的交换器的步骤如下:

  • 首先,登录到RabbitMQ的管理界面。

  • 然后,点击左侧的"Exchanges"。

  • 在显示的页面中,点击"Add a new exchange"。

  • 在弹出的窗口中,填写交换器的名称,选择交换器的类型(direct, fanout, topic, headers),还可以设置其他的参数。

  • 最后,点击"Add exchange",就创建了一个新的交换器。

RabbitMQ的默认用户名和密码确实可以修改的,步骤如下:

  • 首先,登录到RabbitMQ的管理界面,然后点击左边的"Admin"。

  • 在弹出的页面中,找到你要修改密码的用户,然后点击用户名。

  • 在用户的页面中,你可以看到一个"Update this user"的区域,在"Password"和"Verify password"的输入框中输入新的密码。

  • 最后,点击"Update user",就修改了用户的密码。

注意:从安全性考虑,你应该尽快修改RabbitMQ的默认用户名和密码。

在RabbitMQ管理界面查看队列的消息,你可以按照以下步骤进行:

  • 首先,打开RabbitMQ管理界面,输入默认的用户名和密码(都是guest)进行登录。

  • 点击左侧的"Queues"选项,然后在出现的队列列表中,选择你想要查看的队列,点击队列的名称。

  • 在队列的页面中,滚动到下方的"Get message"区域。在此处选择"Get Message(s)"。

  • 点击"Get Message(s)"按钮后,如果队列中有消息,你可以在随后出现的列表中看到这条消息。

  • 在列表中,点击消息的"Payload"部分,你可以看到消息的详细内容。

如何在RabbitMQ管理界面中将消息重新放回队列:

  • 在获取消息的时候,有一个选项叫做"Ack mode",它决定了怎样处理获取到的消息。

  • 如果你想让获取到的消息重新放回队列中,应当选择"Requeue"。

  • 然后当你点击"Get Message(s)"按钮获取消息后,这些消息就会被重新放回到队列中,而不是从队列中删除。

这样做可以使你只查看消息的内容,而不会影响到队列中的消息。在测试和调试的时候可以先这样做,等到程序正常运行后,再实际地从队列中获取消息。

相关文章:

RabbitMQ安装详细教程

(一)在Windows系统上安装Erlang的步骤如下: 打开Erlang的官方下载页面,选择适合你的Windows系统的版本进行下载。 下载完成后,双击运行下载的.exe文件,进入Erlang的安装向导。 在安装向导中,按…...

如何快速写出一个完整的测试用例

测试用例是为了验证软件功能或需求而设计的一组测试输入、执行条件和预期结果。编写测试用例的目的是确保测试过程全面高效、有据可查。 一般来说,编写测试用例的流程包括以下几个步骤: 分析需求:阅读需求文档,理解软件的功能和业…...

Docker容器与虚拟化技术:OpenEuler 部署 ES 与 Kibana

目录 一、实验 1.环境 2.OpenEuler 部署 ES (EalasticSearch) 3.OpenEuler 部署 Kibana 4.部署 Elasticvue插件 5.使用cpolar内网穿透 6.使用Elasticvue 一、实验 1.环境 (1)主机 表1 主机 系统架构版本IP备注LinuxopenEuler22.03 LTS SP2 1…...

数学中的各种符号虚数概念

max i∈S​A i ​ ≥ ∑ i∈S​B i​. 这个不等式表达的意思是对于集合 S 中的任意非空子集,子集中的最大的 A_i(A 的元素)的值都大于等于子集中所有 B_i(B 的元素)的值的总和。换句话说,集合 S 中的最大…...

什么是中间件

中间件是指在应用程序与操作系统之间提供服务的软件,它可以隐藏底层操作系统的复杂性,为应用程序提供各种实用的服务,以便应用程序更好地实现业务逻辑。中间件通常提供如下几种服务: 数据库连接:中间件可以为应用程序提…...

RabbitMQ面经 手敲浓缩版

保证可靠性 生产者 本地事务完成和消息发送同时完成 通过事务消息完成 重写confirm在里面做逻辑处理 确保发送成功(不成功就放入到重试队列) MQ 打开持久化确保消息不会丢失 消费者 改成手动回应 不重复消费 生产者 保证不重复发送消息 消费者…...

解锁金融数据中心场景,实现国产化AD替代,宁盾身份域管为信创电脑、应用提供统一管理

随着信创国产化改造持续推进,越来越多的金融机构不断采购信创服务器、PC、办公软件等,其 IT 基础设施逐渐迁移至国产化 IT 架构下。为支撑国产化 IT 基础设施的正常使用和集中管理运维,某金融机构数据中心的微软Active Directory(…...

Django的js文件没有响应(DOMContentLoaded)

问题出现的原因是因为当浏览器解析到“script”标签并执行其中的JavaScript代码时,页面上的DOM元素尚未完全加载和渲染。这意味着,当尝试通过document.getElementById(‘create-theme-button’)获取元素时,该元素还不存在,导致add…...

滑动窗口代码模板

代码模板: //滑动窗口伪代码 class Solution { public:int minWindow(string s) {// 同方向移动,起始的时候,都位于 0,表示我们定义搜索区间为 [left, right) ,此时区间为空区间int left 0;int right 0;while(right…...

SpringBoot实现邮箱验证

目录 1、开启邮箱IMAP/SMTP服务,获取授权码 2、相关代码 1、使用配置Redis(用于存储验证码,具有时效性) 2、邮箱依赖和hutool(用于随机生成验证码) 3、配置Redis和邮箱信息 4、开启Redis服务 5、编写发送…...

Mac安装Docker提示Another application changed your Desktop configuration解决方案

1. 问题描述 Mac安装Docker后,提示Another application changed your Desktop configuration,Re-apply configurations无效 2. 解决方案 在终端执行下述命令即可解决: sudo ln -sf /Applications/Docker.app/Contents/Resources/bin/docke…...

5分钟安装docker和docker compose环境

5分钟安装docker和docker compose环境 5分钟安装docker和docker compose环境环境介绍卸载docker环境安装docker安装docker compose 5分钟安装docker和docker compose环境 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑…...

leetcode热题100.跳跃游戏2

Problem: 45. 跳跃游戏 II 文章目录 题目思路复杂度Code 题目 给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说,如果你在 nums[i] 处,你可以跳转到任意 nums[i j] 处: …...

【前端】CSS(引入方式+选择器+常用元素属性+盒模型+弹性布局)

文章目录 CSS一、什么是CSS二、语法规范三、引入方式1.内部样式表2.行内样式表3.外部样式 四、选择器1.选择器的种类1.基础选择器:单个选择器构成的1.标签选择器2.类选择器3.id 选择器4.通配符选择器 2.复合选择器1.后代选择器2.子选择器3.并集选择器4.伪类选择器 五…...

迷茫下是自我提升

长夜漫漫,无心睡眠。心中所想,心中所感,忧愁当前,就执笔而下,写下这篇文章。 回忆过往 回想当初为啥学前端,走前端这条路,学校要求嘛,兴趣爱好嘛,还是为了钱。 时间带着…...

用vscode仿制小米官网

html内容: <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><link rel&quo…...

【Java+Springboot】------ 通过JDBC+GetMapping方法进行数据select查询、多种方式传参、最简单的基本示例!

一、JDBC如何使用、PostGresql数据库 1、在pom.xml 先引用jdbc组件。 <!--jdbc--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId></dependency> 2、在pom.xml 再引用p…...

基于单片机光伏太阳能跟踪系统设计

**单片机设计介绍&#xff0c;基于单片机光伏太阳能跟踪系统设计 文章目录 一 概要二、功能设计三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机光伏太阳能跟踪系统的设计&#xff0c;旨在通过单片机技术实现对光伏太阳能设备的自动跟踪&#xff0c;以提高太阳…...

Stable Diffusion 本地化部署

一、前言 最近在家背八股文背诵得快吐了&#xff0c;烦闷的时候&#xff0c;看到使用 AI 进行作图&#xff0c;可以使用本地话部署。刚好自己家里的电脑&#xff0c;之前买来玩暗黑4&#xff0c;配置相对来说来可以&#xff0c;就拿来试试。 此篇是按照 Github 上的 stable-d…...

C++ Algorithm 常用算法

C <algorithm> 头文件是标准库中提供的一系列算法&#xff0c;用于操作范围&#xff08;range&#xff09;内的元素。这些算法可以用于数组、容器如vector和list&#xff0c;以及其他满足相应迭代器要求的数据结构。以下是一些常用的C <algorithm> 中的算法及其使用…...

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…...

React 第五十五节 Router 中 useAsyncError的使用详解

前言 useAsyncError 是 React Router v6.4 引入的一个钩子&#xff0c;用于处理异步操作&#xff08;如数据加载&#xff09;中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误&#xff1a;捕获在 loader 或 action 中发生的异步错误替…...

逻辑回归:给不确定性划界的分类大师

想象你是一名医生。面对患者的检查报告&#xff08;肿瘤大小、血液指标&#xff09;&#xff0c;你需要做出一个**决定性判断**&#xff1a;恶性还是良性&#xff1f;这种“非黑即白”的抉择&#xff0c;正是**逻辑回归&#xff08;Logistic Regression&#xff09;** 的战场&a…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案

问题描述&#xff1a;iview使用table 中type: "index",分页之后 &#xff0c;索引还是从1开始&#xff0c;试过绑定后台返回数据的id, 这种方法可行&#xff0c;就是后台返回数据的每个页面id都不完全是按照从1开始的升序&#xff0c;因此百度了下&#xff0c;找到了…...

让AI看见世界:MCP协议与服务器的工作原理

让AI看见世界&#xff1a;MCP协议与服务器的工作原理 MCP&#xff08;Model Context Protocol&#xff09;是一种创新的通信协议&#xff0c;旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天&#xff0c;MCP正成为连接AI与现实世界的重要桥梁。…...

汇编常见指令

汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX&#xff08;不访问内存&#xff09;XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

七、数据库的完整性

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

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配

目录 一、C 内存的基本概念​ 1.1 内存的物理与逻辑结构​ 1.2 C 程序的内存区域划分​ 二、栈内存分配​ 2.1 栈内存的特点​ 2.2 栈内存分配示例​ 三、堆内存分配​ 3.1 new和delete操作符​ 4.2 内存泄漏与悬空指针问题​ 4.3 new和delete的重载​ 四、智能指针…...

Caliper 负载(Workload)详细解析

Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...

基于Java+VUE+MariaDB实现(Web)仿小米商城

仿小米商城 环境安装 nodejs maven JDK11 运行 mvn clean install -DskipTestscd adminmvn spring-boot:runcd ../webmvn spring-boot:runcd ../xiaomi-store-admin-vuenpm installnpm run servecd ../xiaomi-store-vuenpm installnpm run serve 注意&#xff1a;运行前…...