NameServer执行流程:

简介: NameServer执行流程:

NameServer执行流程:

启动 NameServer,NameServer 启动后监听端口,等待 Broker、Producer、Consumer 连上来,相当于一个路由控制中心。

Broker 启动,跟所有的 NameServer 保持长连接,定时发送心跳包。心跳包中包含当前 Broker 信息(IP+端口等)以及存储所有Topic信息。注册成功后,NameServer 集群中就有 Topic 跟 Broke r的映射关系。

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

Producer 发送消息,启动时先跟 NameServer 集群中的其中一台建立长连接,并从 NameServer 中获取当前发送的 Topic 存在哪些 Broker 上,轮询从队列列表中选择一个队列,然后与队列所在的 Broker 建立长连接从而向 Broker 发消息。

Consumer 跟 Producer 类似,跟其中一台 NameServer 建立长连接,获取当前订阅 Topic 存在哪些 Broker 上,然后直接跟 Broker 建立连接通道,开始消费消息。

目录
相关文章
|
并行计算 算法 计算机视觉
【MATLAB 】 EMD信号分解+模糊熵(近似熵)算法
【MATLAB 】 EMD信号分解+模糊熵(近似熵)算法
377 0
|
9月前
|
XML Java 测试技术
Spring IOC—基于注解配置和管理Bean 万字详解(通俗易懂)
Spring 第三节 IOC——基于注解配置和管理Bean 万字详解!
638 26
|
4月前
|
人工智能 自然语言处理 Nacos
Nacos 3.0:微服务与AI融合的全新治理平台
Nacos 3.0:微服务与AI融合的全新治理平台
244 46
【YashanDB知识库】解压安装包时报错"tar:Error is not recoverable"
【YashanDB知识库】解压安装包时报错"tar:Error is not recoverable"
|
7月前
|
存储 JSON Java
深入理解 JWT 中 Claims 的设计及其合理性
JWT(JSON Web Token)中 Claims 是存储用户或业务信息的关键部分。JJWT 库通过 `setClaims` 方法支持传入 `Map<String, Object>` 或 `Claims` 对象,确保灵活性与高效性。本文从源码角度剖析 JWT Claims 的设计思想,介绍三种实现方式:使用 `HashMap`、`DefaultClaims` 和逐个添加声明,并分析其合理性。这种基于 Map 的设计符合 JSON 格式特性,易于扩展且性能优越,为开发者提供灵活的选择,满足不同业务需求。
430 2
|
网络协议 网络性能优化 数据安全/隐私保护
IPV4与IPV6之间的区别
IPv4(32位,42.9亿地址)面临枯竭,促成了IPv6(128位,近乎无限地址)的诞生。IPv6增强安全性,提供身份验证,使用灵活的ICMPv6和SLAAC配置地址,其十六进制表示法区别于IPv4的点分十进制。IPv6还优化了数据包处理,包含Flow Label以提升服务质量,使用AAAA记录进行DNS映射。随着需求增长,IPv6正逐步成为标准。
|
IDE Java 测试技术
为什么Spring和IDEA不推荐使用@Autowired注解,有哪些替代方案?
为什么Spring和IDEA不推荐使用@Autowired注解,有哪些替代方案?
681 1
为什么Spring和IDEA不推荐使用@Autowired注解,有哪些替代方案?
|
SQL 存储 Java
java通过拦截器实现项目每次执行sql耗时统计,可配置是否打印
java通过拦截器实现项目每次执行sql耗时统计,可配置是否打印
|
SQL 关系型数据库 FESCAR
分布式事务框架 seata
分布式事务框架 seata
520 0
|
前端开发 Java 微服务
Unable to find GatewayFilterFactory with name TokenRelay
Unable to find GatewayFilterFactory with name TokenRelay

热门文章

最新文章