详解RabbitMQ单机多节点搭建集群

详解RabbitMQ单机多节点搭建集群

目录

单机多节点搭建集群

Ubuntu

安装RabbitMQ

查看RabbitMQ的状态

再启动两个节点

搭建集群

Centos

安装RabbitMQ

查看集群状态

再启动两个节点

搭建集群


单机多节点搭建集群

Ubuntu
安装RabbitMQ

安装RabbitMQ的步骤在之前的博客中已经写过了。

查看RabbitMQ的状态
rabbitmqctl status #查看RabbitMQ状态

会在结果的第一行看到节点的名称,比如:

端⼝号介绍:

25672这是Erlang分布式节点通信的默认端⼝, Erlang是RabbitMQ的底层通信协议.
15672这是 Web管理界⾯的默认端⼝, 通过这个端⼝可以访问RabbitMQ的Web管理控制台, ⽤于查看和管理消息队列.
5672这是 AMQP (Advanced Message Queuing Protocol) 协议的默认端⼝, ⽤于客⼾端与
RabbitMQ服务器之间的通信.
再启动两个节点

现在已经安装的RabbitMQ端⼝号是5672, 15672
再启动两个RabbitMQ服务, 节点名称和端⼝号分别设置为:

Node nameAMQP协议端口号Web管理界面端口号
rabbit2567315673
rabbit3567415674

启动命令如下:

RABBITMQ_NODE_PORT=5673 RABBITMQ_SERVER_START_ARGS="rabbitmq_management listener [{port,15673}]" RABBITMQ_NODENAME=rabbit2 rabbitmq-server -detachedRABBITMQ_NODE_PORT=5674 RABBITMQ_SERVER_START_ARGS="rabbitmq_management listener [{port,15674}]" RABBITMQ_NODENAME=rabbit3 rabbitmq-server -detached

然后可以通过IP+15673和IP+15674访问管理界面看是否启动成功。

搭建集群

停止服务并重置

rabbitmqctl -n rabbit2 stop_apprabbitmqctl -n rabbit2 resetrabbitmqctl -n rabbit3 stop_apprabbitmqctl -n rabbit3 reset

把node2,node3节点加入集群

rabbitmqctl -n rabbit2 join_cluster rabbit@hcss-ecs-2618rabbitmqctl -n rabbit3 join_cluster rabbit@hcss-ecs-2618

重启rabbit2,rabbit3

rabbitmqctl -n rabbit2 start_apprabbitmqctl -n rabbit3 start_app

查看集群状态

rabbitmqctl cluster_status -n rabbit

可以通过主节点的管理界面,看到集群其它节点的状态

Centos
安装RabbitMQ

安装RabbitMQ的详细步骤已经在之前的博客中写过了。

查看集群状态
rabbitmqctl status #查看RabbitMQ状态

可以在结果中第一行看到节点名称

再启动两个节点

现在已经安装的RabbitMQ端⼝号是5672, 15672
再启动两个RabbitMQ服务, 节点名称和端⼝号分别设置为:

Node nameAMQP协议端口号Web管理界面端口号
rabbit2567315673
rabbit3567415674

启动命令如下:

RABBITMQ_NODE_PORT=5673RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15673}]" RABBITMQ_NODENAME=rabbit2rabbitmq-server -detachedRABBITMQ_NODE_PORT=5674RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15674}]" RABBITMQ_NODENAME=rabbit3rabbitmq-server -detached

注意上面的命令在复制的时候如下图所示:

因为我在复制上面的命令时发现多次都没有启动成功,找了好久才发现在复制的时候,一个-横线在复制后没有了。

可以通过IP+端口号进行访问看是否启动成功,也可以使用netstat -anp | grep 56来查看是否启动成功。

搭建集群

停止服务并重置

rabbitmqctl -n rabbit2 stop_app

rabbitmqctl -n rabbit2 reset



rabbitmqctl -n rabbit3 stop_app

rabbitmqctl -n rabbit3 reset

把rabbit2和rabbit3加入集群

rabbitmqctl -n rabbit2 join_cluster rabbit@iZbp190qbav81ruf46b5w7Z



rabbitmqctl -n rabbit3 join_cluster rabbit@iZbp190qbav81ruf46b5w7Z

重启rabbit2和rabbit3

rabbitmqctl -n rabbit2 start_app



rabbitmqctl -n rabbit3 start_app

查看集群状态

rabbitmqctl cluster_status -n rabbit

通过管理界面可以查看到集群信息

Read more

告别小白!吃透 MySQL 基本查询,看这一篇就够了

告别小白!吃透 MySQL 基本查询,看这一篇就够了

🔥海棠蚀omo:个人主页                 ❄️个人专栏:《初识数据结构》,《C++:从入门到实践》,《Linux:从零基础到实践》,《Linux网络:从不懂到不会》,《MySQL:新手入门指南》                 ✨追光的人,终会光芒万丈 博主简介: 目录 一.Create 1.1替换 二.Retrieve 2.1SELECT列 2.1.1全列查询 2.1.2指定列查询 2.1.3查询字段为表达式 2.1.4为查询结果指定别名 2.1.5结果去重 2.2WHERE条件 2.2.1英语不及格的同学及英语成绩 2.2.2语文成绩在[80,90]分的同学及语文成绩

By Ne0inhk
Flutter 组件 okay 的适配 鸿蒙Harmony 深度进阶 - 驾驭异步结果链式融合、实现鸿蒙端分布式业务逻辑解耦与精密审计方案

Flutter 组件 okay 的适配 鸿蒙Harmony 深度进阶 - 驾驭异步结果链式融合、实现鸿蒙端分布式业务逻辑解耦与精密审计方案

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 组件 okay 的适配 鸿蒙Harmony 深度进阶 - 驾驭异步结果链式融合、实现鸿蒙端分布式业务逻辑解耦与精密审计方案 前言 在前文中,我们探讨了 okay 在鸿蒙(OpenHarmony)端实现基础 Result 模式包装的实战。但在真正的“分布式微服务聚合”、“高并发资产对账”以及“具备自愈能力的 IoT 指令链”场景中。简单的 ok() 与 err() 判定往往不足以支撑起复杂的业务全景。面对需要同时并行发起 3 个 API 请求,并要求在“所有请求均成功时执行合并、任一请求失败时执行局部逻辑路由”的高阶需求。如果缺乏一套完善的异步结果映射与多级逻辑聚合机制。不仅会导致异步回调地狱(Callback Hell)在

By Ne0inhk
MySQL 大数据处理优化与分布式架构探索

MySQL 大数据处理优化与分布式架构探索

MySQL 大数据处理优化与分布式架构探索 在数据爆炸式增长的时代,MySQL 作为一款流行的开源关系型数据库管理系统,如何在大数据处理场景下保持高效与稳定,成为了众多开发者和数据库管理员关注的焦点。本文将深入探讨 MySQL 大数据处理优化与分布式架构的实现与应用,帮助读者更好地应对高并发和大数据量的挑战。 一、MySQL 大数据处理面临的挑战 随着业务的发展和用户数量的增长,MySQL 数据库面临的数据量急剧增加,这对数据库的性能和扩展性提出了更高要求。传统的单机 MySQL 数据库在处理大规模数据时,往往会遇到性能瓶颈,如查询速度慢、写入压力大、存储能力不足等问题。因此,如何优化 MySQL 大数据处理,成为了一个亟待解决的问题。 二、MySQL 大数据处理优化策略 1. 索引优化 索引是 MySQL 查询优化的关键。合理的索引设计可以显著提高查询速度。在大数据量场景下,应重点关注以下几点: * 选择合适的索引类型:根据查询需求选择合适的索引类型,如主键索引、唯一索引、普通索引、复合索引等。[9] * 避免索引失效:注意查询条件中的数据类型匹配、

By Ne0inhk
分布式文件存储服务设计与实现优化

分布式文件存储服务设计与实现优化

分布式文件存储服务设计与实现:基于 brpc+MinIO+Redis+etcd 的全栈方案 在分布式系统中,文件存储服务需要解决高可用、高性能、可扩展三大核心问题。本文将详细解析一套基于 brpc(RPC 框架)、MinIO(对象存储)、Redis(缓存 / 元数据存储)、etcd(服务注册发现)的分布式文件存储服务实现,包含服务端核心逻辑、依赖封装、RPC 接口设计及客户端测试全流程,助力开发者快速搭建企业级文件存储解决方案。 一、系统架构总览 本文件存储服务采用分层设计,整体架构如下: ┌─────────────────┐ ┌─────────────────────────────────────┐ │ 客户端层 │ │ 服务端层 │ │ (测试/业务客户端)│◄────►│ ┌─────────┐ ┌─────────────────┐ │ └─────────────────┘ │ │ RPC服务 │ │ 核心依赖层 │ │ │ │(brpc) │◄─►│ MinIO+Redis+LRU │ │ ┌─────────────────┐ │ └─────────┘

By Ne0inhk