Nacos 配置更新的工作流程

        首先,Nacos 是采用长轮训的方式向 Nacos Server 端发起配置更新查询的功能。所谓长轮训,(如图)就是客户端发起一次轮训请求到服务端,当服务端配置没有任何变更的时候,这个连接一直打开。 直到服务端有配置或者连接超时后返回。

        Nacos Client 端需要获取服务端变更的配置,前提是要有一个比较, 也就是拿客户端本地的配置信息和服务端的配置信息进行比较。 一旦发现和服务端的配置有差异,就表示服务端配置有更新,于是把更新的配置拉到本 地。在这个过程中,有可能因为客户端配置比较多,导致比较的时间较长,使得配置同步较慢的问题。

于是 Nacos 针对这个场景,做了两个方面的优化。
1. 减少网络通信的数据量,客户端把需要进行比较的配置进行分片,每一个分片大小
是 3000,
也就是说,每次最多拿 3000 个配置去 Nacos Server 端进行比较。
2. 分阶段进行比较和更新,
第一阶段,客户端把这 3000 个配置的 key 以及对应的 value 值的 md5 拼接成一个字
符串,然后发送到 Nacos Server 端
进行判断,服务端会逐个比较这些配置中 md5 不同的 key,把存在更新的 key 返回给
客户端。
第二阶段,客户端拿到这些变更的 key,循环逐个去调用服务单获取这些 key 的 value
值。
这两个优化,核心目的是减少网络通信数据包的大小,把一次大的数据包通信拆分成了
多次小的数据包通信。
虽然会增加网络通信次数,但是对整体的性能有较大的提升。
最后,再采用长连接这种方式,既减少了 pull 轮询次数,又利用了长连接的优势,很
好的实现了配置的动态更新同步功能。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
nacos配置中心的流程可以总结为以下几个步骤: 1. 下载nacos源码并编译:首先,你需要从GitHub上克隆nacos的源码,并按照指导进行编译。你可以使用以下命令来克隆源码并编译: ``` git clone https://github.com/alibaba/nacos.git cd nacos/ mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U ``` 2. 启动nacos服务:在编译完成后,进入`distribution/target/nacos-server-$version/nacos/bin`目录,执行`startup.cmd -m standalone`命令来启动nacos服务。这将启动一个单机模式的nacos实例。 3. 配置nacos客户端:在nacos管理平台中,你需要配置nacos客户端,即注册到nacos的服务。这可以通过修改配置文件来实现。例如,在配置文件中,你可以设置以下参数: ``` spring: shardingsphere: enabled: false cloud: nacos: discovery: server-addr: 1**.1**.***.***:8848 namespace: 8c1ea7e1-d45f-4605-9148-55dc305057c6 group: DEFAULT_GROUP ``` 这些配置参数将用于连接nacos服务和管理平台。 总结起来,nacos配置中心的流程包括下载源码并编译,启动nacos服务,以及配置nacos客户端。希望这能帮助到你。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *2* *3* [windows环境下启动和配置nacos最全流程](https://blog.csdn.net/weixin_48363639/article/details/129261210)[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^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小海海不怕困难

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值