Nacos删除配置

背景

@NacosValue(value = "${app.check:8888}", autoRefreshed = true)
private String applCheck;

        如上所示,如果nacos不加app.check这个配置,那appCheck 字段默认取8888。但是当nacos配置了app.check后,就按nacos配置的值来。

        如果把nacos配置的app.check给去掉呢?去掉了nacos的配置,系统读取的仍然是之前nacos里配置的值。

分析

        因为nacos有客户端本地缓存的机制,会将服务端配置的信息缓存在本地,当服务端信息有变更时,也会同步到本地进行变更。

        但是nacos不会将删除的kv变更同步到到客户端。这是nacos的bug吗?假如服务端删除一个配置信息,那客户端本地也同步删除一个;假如服务端所有的配置信息全部删除,那客户端本地的配置也全部删除吗?假如nacos服务端down了,客户端检查拿不到服务端的配置信息,是否也要把本地缓存配置删除?这样太不安全了。

        重启服务器后,才能同步这个删除的配置信息。

        

你可能感兴趣的:(java,开发语言)