,手动通知C端,然后失效缓存,也就是半自动化刷新
自动失效缓存不展开分析,半自动化刷新实现也很简单,基于Apollo的客户端通知机制就可以实现,在配置中心发布变更主体,然后在应用层监听变更内容并做出响应操作即可...的 github 文档中有介绍:
1.客户端和服务端保持了一个长连接,从而能第一时间获得配置更新的推送
2.客户端还会定时从Apollo配置中心拉取应用的最新配置
这是一个fallback...3.客户端从Apollo配置中心获取应用的最新配置后,会保存在内存中
4.客户端会把从服务端获取到的配置在本地缓存一份
遇到服务不可用,或网络不通时,依然能从本地恢复配置
5应用程序可以从...Apollo客户端获取最新的配置、订阅配置更新通知
长连接是更新配置的主要手段,定时刷新是辅助手段,避免长轮训失败造成数据更新丢失。...基于前一小结,如果用户发布了属性变更,RemoteConfigRepository的定时刷新或长轮询逻辑会从Apollo Server拉取最新数据到本地,然后和本地缓存(上一个版本数据)做对比,如果发现不一样则触发配置变更