从0到1手写注册中心Registry之主从数据同步

集群选主完成后,从节点需要从主节点同步数据。

一、快照数据

同步的快照数据是描述注册中心的服务信息。

  • registry: 每个服务对应的实例;
  • versions:每个服务的版本信息;
  • timestamps:每个服务的时间戳;
  • version:当前服务版本信息;

二、主从数据同步

在定时任务中,依次执行:服务状态更新,集群选主,主从数据同步。

当前节点不是主节点,并且版本信息小于主节点的版本,就认为是从节点,就需要从主节点同步数据,以保证整个集群对外数据的一致性。

发起http请求,获取快照数据,然后根据快照数据恢复到当前从节点注册中心数据。

恢复数据的逻辑就是清空,再添加。

三、测试

依次启动8084、8085、8086,主节点是8084,从节点是8085和8086。

向主节点8084注册服务

从节点8086也能查询到服务,说明主从数据同步成功。

相关推荐
深念Y14 小时前
登录日志与管理员审计日志存储决策
前端·arm开发·后端·微服务·云原生·架构
头茬韭菜20 小时前
功能点 11-12:客户端、RPC 通信、监控与安全
网络协议·安全·rpc·fluss
lv__pf21 小时前
Sentinel【TL微服务10、11】
java·微服务·sentinel
MetaLite1 天前
Spring-MVC微服务接口怎么分层-网关Controller与Service边界
spring·微服务·mvc
星期一研究室1 天前
数据太乱找不到?让信息自动「找上门」
微服务·产品·设计
深念Y1 天前
微服务抽取路线图:从胖单体到 ARM 集群
前端·arm开发·数据库·后端·微服务·云原生·架构
liangsheng_g2 天前
微服务本地开发零配置隔离方案
java·微服务·架构
jonyleek2 天前
技术实践:基于 Vue3 + Spring Cloud 微服务实现私有化文档系统的类 SaaS 协同体验
微服务·私有化部署·vue3·springcloud·协同编辑·jvs企业文档·无忧企业文档
JackSparrow4142 天前
Kafka(七)集成Apache Avro+Apicurio Schema Registry以保障生产者与消费者的消息兼容性
java·中间件·rpc·kafka·apache·avro·schema-registry