我有两个nacos集群,第一个集群中有三个nacos实例,第二个集群中有一个。这两个集群都在我的电脑上部署,使用同一个数据库
我将服务提供者注册到第一个集群中,为什么在第二个集群中查看不到。
当使用了nacos-sync将第一个集群中的这个服务提供者同步到第二个集群以后,才可以在第二个集群中查看到注册的服务
但是数据库的内容貌似没有任何变化,是因为nacos将实例信息存储在了内存中吗?底层的原理是什么呢?
Nacos服务注册后保存在哪里?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
关注 引用 皆我百晓生 小程序回复内容作答:
Nacos服务注册的信息默认是存储在内存中的,而不是直接存储在数据库中。Nacos使用了一种基于RAFT协议的分布式一致性算法来保证数据的一致性和可靠性。当你将服务提供者注册到第一个集群中时,它会将注册信息保存在内存中的实例列表中。当你使用nacos-sync将第一个集群中的服务提供者同步到第二个集群时,它会将内存中的实例列表复制到第二个集群的内存中,从而使第二个集群中也能查看到注册的服务。需要注意的是,Nacos的内存存储是有限的,如果内存不足或者重启了Nacos实例,之前注册的服务信息可能会丢失。为了保证数据的持久性,你可以配置Nacos使用数据库作为持久化存储,这样即使重启了Nacos实例,之前注册的服务信息也能够恢复。你可以在Nacos的配置文件中进行相应的配置。
总结一下,Nacos将服务注册信息存储在内存中,使用RAFT协议保证数据的一致性和可靠性。你可以选择将数据持久化到数据库中以保证数据的持久性。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥20 校园二手交易小程序搭建
- ¥15 请问在ubuntu用conda创建环境报错怎么能解决
- ¥15 STM32CubeMX/proteus按键控制指示灯颜色切换
- ¥20 python,计算区位熵和扩张指数
- ¥15 Python环境配置
- ¥15 大四学生的困惑,有偿提问!
- ¥15 解决页面无法编入索引:被“noindex”标签排除的问题?
- ¥15 arduino测量电阻
- ¥15 快手uid转快手号谁能解决 需要开发
- ¥15 iis部署Django时css不生效,来个真人,ai不好使