三级缓存是什么

一级缓存(注册表)ConcurrentHashMap
二级缓存(ReadWriteMap)guava#LoadingCache
三级缓存(ReadOnlyMap)ConcurrentHashMap

注册一个服务实例

向注册表中写入服务实例信息,并使得二级缓存失效

寻找一个服务

从三级缓存中找,如果有则返回,如果没有则去二级缓存拿并更新,如果二级缓存已经失效,触发guava的回调函数从注册表中同步。

数据同步定时器

每 30s 从二级缓存向三级缓存同步数据

  • 二级缓存有效
    • 从二级缓存向三级缓存同步数据
  • 二级缓存失效
    • 触发二级缓存的同步(从注册表中拉取数据)
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐