自研服务注册中心设计

自研服务注册中心设计,第1张

自研服务注册中心设计

设计目标:

1、提供可跨语言使用服务注册与发现平台

2、提供指令下发功能对集群服务进行管理

        管控指令存在时效性,指令是可损的

3、提供节点信息存储与扩展

        服务器类型(物理机、虚拟机、Docker容器等)、节点权重、服务分组、IP、Port、Name、Version等

服务注册: RPC/Web服务启动时,通过ControlCenterPlugin与控制中心服务建立并维护长连接,并自动上报服务节点,以及节点信息

服务发现

主动发现:Http服务 - 服务管理平台 - ControlCenterClient - ControlCenterService

被动发现:服务器节点变更时,控制中心主动向ControlCenterPlugin推送阶段变更类型,以及变更信息

 

 

 

 指令发布

Client方式

        管理员通过服务管理平台发布指令

        服务管理平台通过HTTP协议传递指令至控制中心集群

指令同步

方案一:基于TCP(建议方案)

        控制中心服务集群任意节点,接收到服务指令

        基于Nettty通过TCP连接,在集群内进行服务指令同步

方案二:基于消息队列

        控制中心服务集群任意节点,接收到服务指令

        基于消息队列发布服务指令

        控制中心服务集群全部节点从消息队列接收服务指令

 

名词解释:

控制中心 - 注册中心

ControlCenterPlugin - 微服务业务方引用,用于自动注册、服务发现、接收管理平台指令

ControlCenterClient - 服务管理平台引用,用于与控制中心进行数据交互

ControlCenterService - 控制中心服务,提供服务注册、服务发现、指令下发等功能

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/zaji/5694907.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存