RocketMQ 07 NameServer详解

RocketMQ 07 NameServer详解

NameServer是一个非常简单的Topic路由注册中心,其角色类似Dubbo中的zookeeper,支持Broker的动态注册与发现。主要包括两个功能

Broker管理,NameServer接受Broker集群的注册信息并且保存下来作为路由信息的基本数据。然后提供心跳检测机制,检查Broker是否还存活;

路由信息管理,每个NameServer将保存关于Broker集群的整个路由信息和用于客户端查询的队列信息。然后Producer和Conumser通过NameServer就可以知道整个Broker集群的路由信息,从而进行消息的投递和消费

NameServer通常也是集群的方式部署,各实例间相互不进行信息通讯。Broker是向每一台NameServer注册自己的路由信息,所以每一个NameServer实例上面都保存一份完整的路由信息。当某个NameServer因某种原因下线了,Broker仍然可以向其它NameServer同步其路由信息,Producer,Consumer仍然可以动态感知Broker的路由的信息

NameServer实例时间互不通信,这本身也是其设计亮点之一,即允许不同NameServer之间数据不同步(像Zookeeper那样保证各节点数据强一致性会带来额外的性能消耗)

为什么没有使用zookeeper?

相关推荐
残 风3 分钟前
linux(Xshell、Xterm)如何搭建隧道间接访问目标服务网站教程
linux·运维·php·信息与通信
x***r15112 分钟前
WinDynamicDesktop动态壁纸软件安装教程:动态壁纸+地理位置配置(64位)
linux·运维·服务器
青花瓷16 分钟前
windows下如何移动docke从C盘到F盘
运维·服务器
老卢聊运维20 分钟前
CoreDNS配置详解:forward、cache、rewrite插件最佳实践指南
运维·云原生·kubernetes
IT青栀菀20 分钟前
Tengine替换Nginx作为代理服务遇到的问题
运维·nginx
蓝天白云下遛狗20 分钟前
关于多网卡情况下docker内部网络通讯研究
运维·docker·容器
淼淼爱喝水24 分钟前
Ansible 批量运维实战:openEuler 环境一键安装 httpd 服务
运维·ansible
ulias21227 分钟前
Linux中的开发工具
linux·运维·服务器·开发语言·c++·windows
wanhengidc29 分钟前
服务器如何防范爬虫攻击?
运维·服务器·网络·爬虫·游戏·智能手机
mobai738 分钟前
使用pyang将yang模型转换为xml
xml·运维·服务器