Nacos实例缓存

由于远程调用

  1. 用RestTemplate请求注册中心获取微服务地址列表

  2. 用RestTemplate给对方服务的某个地址发送请求

每次调用都要请求两次,会非常耗费性能

所以

第一次获取实例列表之后,缓存一下,就不用再获取了

|

而实例缓存要做的就是,和注册中心做一个同步/实时更新,如果有一个实例在注册中心被删除了,就从缓存中剔除出去这个实例

这个实例缓存存在本地内存中

缓存更新机制

  • 拉取+长轮询:客户端默认每60秒拉取一次全量实例,同时通过长轮询(默认30秒)监听实例变更,实时更新缓存。

  • 健康检查:Nacos Client会对实例做健康检查(默认心跳间隔5秒,不健康的实例会从可用缓存中剔除.

    spring:
    cloud:
    nacos:
    discovery:
    server-addr: 127.0.0.1:8848
    namespace: public
    heart-beat-intervel: 5000 #实例心跳间隔
    heat-beat-timeout: 15000 # 心跳超时时间(实力被标记为不健康的阈值)
    refresh-intervel: 60000 # 每次拉取实例的事件
    naming-polling-timeout: 30000 #长轮询监听实例变更,数值越小,实时性越高,网络交互越频繁

相关推荐
派大鑫wink11 小时前
【Day61】Redis 深入:吃透数据结构、持久化(RDB/AOF)与缓存策略
数据结构·redis·缓存
Jia ming14 小时前
TLB与高速缓存:加速地址与数据的双引擎
缓存·tlb
h7ml15 小时前
高并发场景下查券返利机器人的请求合并与缓存预热策略(Redis + Caffeine 实践)
数据库·redis·缓存
Geoking.16 小时前
Redis 的 RDB 与 AOF:持久化机制全解析
数据库·redis·缓存
myloveasuka19 小时前
分离指令缓存(I-Cache)和数据缓存(D-Cache)的原因
笔记·缓存·计算机组成原理·硬件
想搞艺术的程序员20 小时前
架构破局 - Redis 不再做缓存!替代 MySQL 做主存储
redis·缓存·架构
2401_841495641 天前
【LeetCode刷题】LRU缓存
数据结构·python·算法·leetcode·缓存·lru缓存·查找
醒过来摸鱼1 天前
redis源码deps目录
数据库·redis·缓存
Huanlis1 天前
Redis Stream 核心原理与实战指南
数据库·redis·缓存
青春男大2 天前
Redis和RedisTemplate快速上手
java·数据库·redis·后端·spring·缓存