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

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

一、快照数据

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

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

图片

二、主从数据同步

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

图片

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

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

图片

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

图片

三、测试

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

向主节点8084注册服务

图片

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

图片

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Seata可以注册到多种不同的注册中心,如nacos、eureka、redis、zk、consul、etcd3、sofa等。在配置文件中,可以通过修改registry.conf文件来指定Seata注册到哪个注册中心。例如,如果要将Seata注册到nacos,可以按照以下步骤进行配置: 1. 解压Seata安装包,进入seata\seata-server-1.4.1\seata\conf文件夹。 2. 打开registry.conf文件。 3. 在registry部分,将type参数设置为"nacos",表示选择注册中心为nacos。 4. 配置nacos的相关参数,如application、serverAddr、group、namespace等。 5. 在config部分,同样将type参数设置为"nacos",表示选择配置中心为nacos。 6. 配置nacos的相关参数,如serverAddr、namespace、group等。 这样,Seata就会将自身注册到nacos注册中心。根据具体需求,你也可以选择其他注册中心进行配置。\[1\]\[2\] 另外,客户端注册中心是指在分布式项目中的registry.conf配置文件中的registry.type参数,用于指定客户端在哪里发现Seata服务器。例如,如果Seata服务器由zookeeper管理,那么客户端只需向zookeeper发现Seata服务器即可。在registry.conf文件中,可以将type参数设置为"zk",并配置相应的zookeeper参数,如serverAddr、sessionTimeout、connectTimeout等。这样,客户端就可以通过zookeeper发现Seata服务器。\[3\] #### 引用[.reference_title] - *1* *3* [seata 的注册中心和配置中心](https://blog.csdn.net/qq_16320025/article/details/106076853)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [本地windows运行seata服务并注册到nacos中心](https://blog.csdn.net/baidu_36124158/article/details/119003825)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值