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

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

一、快照数据

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

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

二、主从数据同步

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

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

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

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

三、测试

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

向主节点8084注册服务

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

相关推荐
sunwenjian88617 小时前
微服务搭建----springboot接入Nacos2.x
spring boot·微服务·架构
步步为营DotNet19 小时前
全面解读C# 14在云原生微服务开发中的创新应用
微服务·云原生·c#
heimeiyingwang1 天前
【架构实战】微服务架构核心概念与演进
java·微服务·架构
天远数科1 天前
分布式系统实战:基于天远二手车估值API构建高可用车辆估值微服务
大数据·微服务·云原生·架构
qqty12171 天前
spring loC&DI 详解
java·spring·rpc
heimeiyingwang2 天前
【架构实战】Spring Cloud微服务实战入门
spring cloud·微服务·架构
AI精钢2 天前
AI时代,如何对单体应用进行微服务化重构?
微服务·系统架构
yuanlaile2 天前
Go-Zero高性能Web+微服务全集解析
微服务·golang·go-zero·go微服务
殷紫川2 天前
DDD 领域驱动设计:从战略到战术,终结微服务拆分的所有混乱
微服务·架构