Nacos的三层缓存是什么

Nacos的三层缓存包括‌容灾目录 ‌、‌本地缓存 ‌和‌服务端缓存‌,主要用于提升性能、降低存储压力并实现容错能力。

容灾目录

  • 作用:在服务端或客户端短暂不可用时,提供临时数据访问能力。
  • 实现:通过本地磁盘快照文件(如snapshot目录)存储配置或服务信息,确保应用启动时可加载最新数据。

本地缓存

  • 作用:加速数据读取,减少对底层存储(如数据库)的直接访问。
  • 实现:
  • 服务端:内存缓存服务实例、配置等核心数据,通过ConcurrentHashMap等结构存储。
  • 客户端:内存缓存服务发现和配置信息,支持启动时加载本地快照(需显式配置nacos.naming.load.cache.at.start=true)。

服务端缓存

  • 作用:优化读取性能,降低数据库负载。
  • 实现:
  • 内存缓存:存储高频访问的服务实例、配置等数据。
  • 本地文件缓存:周期性从数据库(如MySQL)同步配置到磁盘(如{user.home}/nacos/data/config-data),支持快速读取和容灾。

缓存目的

  • 提升性能:内存缓存减少延迟,本地缓存降低网络开销。
  • 容错能力:容灾目录和本地快照确保服务不可用时仍可用。
相关推荐
無a伟18 分钟前
RabbitMq高级特性:TTL,死信队列,延迟队列
java·分布式·rabbitmq
长谷深风11127 分钟前
Agent 跑了 30 分钟宕机,如何从断点继续?
java·大数据·人工智能·ai·大模型·memory·aiagent
慧都小妮子28 分钟前
DevExpress Java 文档处理 API 免费 CTP:PDF、PowerPoint、条码与跨平台部署
java·pdf·powerpoint·devexpress·文档处理·条码生成
泡海椒31 分钟前
告别反射低效:JQuick-Java ASM动态调用链性能优化实战
java·python·性能优化
土司大王40 分钟前
LeetCode 17 电话号码的字母组合:Java 回溯模板、多叉决策树与复杂度分析
java·leetcode·决策树
CoderYanger1 小时前
前端基础——JavaScript(WebAPI)代码案例
java·开发语言·前端·javascript·css·前端框架·html5
Nuanyt1 小时前
JUC常见核心知识梳理02 AQS ReentrantLock CAS 原子类 线程池
java
CodeStats1 小时前
【Java数据类型】Java底层数据类型原理(上):基本类型、转换与封装核心
java·数据类型·string·封装·转换
陈皮波比茶1 小时前
SpringCloudAlibaba
java·spring cloud·微服务
重生之小比特1 小时前
【Java SE】程序逻辑控制
java·开发语言·python