双主双从(2m-2s)集群介绍和工作流程说明|学习笔记

简介: 快速学习双主双从(2m-2s)集群介绍和工作流程说明

开发者学堂课程【RocketMQ知识精讲与项目实战(第一阶段)双主双从(2m-2s)集群介绍和工作流程说明】学习笔记,与课程紧密联系,让用户快速学习知识

课程地址:https://developer.aliyun.com/learning/course/702/detail/12368


双主双从(2m-2s)集群介绍和工作流程说明

 

内容介绍:

一、总体架构

二、集群工作流程

 

一、总体架构

消息高可用采用2m-2s(同步双写)方式

image.png


二、集群工作流程

(1) 启动NameServer

启动 NameServer,NameServer 起来后监听端口,等待 Broker、

ProducerConsumer 连上来,相当于一个路由控制中心。

(2) Broker启动

Broker 启动,跟所有的 NameServer 保持长连接,定时发送心跳包。心跳包中包含当前 Broker 信息(IP+端口等)以及存储所有Topic

信息。注册成功后,NameServer 集群中就有 Topi c跟 Broker 的映射关系。

(3) 创建Topic

收发消息前,先创建 Topic,创建 Topic 时需要指定该 Topic 要存储在哪些Broker上,也可以在发送消息时自动创建 Topic。

(4) Producer发送消息

Producer 发送消息,启动时先跟 NameServer集群中的其中一台建立长连接,并从

NameServer中获取当前发送的 Topic 存在哪些

Broker上,轮询从队列列表中选择一个队列,然后与队列所在的 Broker 建立长连接从而向 Broker 发消息。

(5) Consumer获取当Topic位置

Consumer 跟 Producer 类似,跟其中一台 NameServer 建立长连接,获取当前订

阅 Topic 存在哪些 Broker上,然后直接跟Broker建立连接通道,开始消费消息。

image.png


相关文章
|
关系型数据库 MySQL Java
confluence部署
confluence部署
1519 0
confluence部署
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
3814 31
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
|
9月前
|
机器学习/深度学习 设计模式 API
Python 高级编程与实战:构建 RESTful API
本文深入探讨了使用 Python 构建 RESTful API 的方法,涵盖 Flask、Django REST Framework 和 FastAPI 三个主流框架。通过实战项目示例,详细讲解了如何处理 GET、POST 请求,并返回相应数据。学习这些技术将帮助你掌握构建高效、可靠的 Web API。
|
11月前
|
机器学习/深度学习 供应链 搜索推荐
优化销售预测:6种模型适用的场景与实战案例
不同行业的销售预测采用什么模型比较好?3分钟了解6种销售预测模型,以及适用行业场景。
3265 2
优化销售预测:6种模型适用的场景与实战案例
|
运维 网络协议 Linux
Linux与Windows下追踪网络路由:traceroute、tracepath与tracert命令详解
Linux与Windows下追踪网络路由:traceroute、tracepath与tracert命令详解
3236 0
|
监控
关键绩效指标和关键风险指标的区别
【8月更文挑战第31天】
802 0
|
关系型数据库 MySQL 分布式数据库
PolarDB产品使用问题之如何进行存储容量的扩容
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
SQL 算法 大数据
深入解析力扣184题:部门工资最高的员工(子查询与窗口函数详解)
深入解析力扣184题:部门工资最高的员工(子查询与窗口函数详解)
|
安全 网络协议 数据挖掘
游戏盾如何隐藏服务器真实IP
游戏盾采用了智能分布式云接入系统,通过部署接入服务,使得游戏客户端不再直接与源服务器建立连接,而是通过游戏盾连接至分布在各地的高防节点。这一架构不仅实现了网络加速,还巧妙地隐藏了源服务器的真实IP地址,使得攻击者难以直接定位到真实的服务器。
|
消息中间件 安全 fastjson
消息队列 MQ使用问题之NameServer集群是什么结构
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。