Nacos的三层缓存是什么

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

容灾目录

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

本地缓存

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

服务端缓存

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

缓存目的

  • 提升性能:内存缓存减少延迟,本地缓存降低网络开销。
  • 容错能力:容灾目录和本地快照确保服务不可用时仍可用。
相关推荐
桦说编程13 小时前
深入理解 FutureTask 状态机——从契约到实现
java·后端·性能优化
松仔log14 小时前
Kotlin中级——协程
java·jvm·kotlin
wifi___18 小时前
全局异常处理的原理
java·开发语言
2601_963870201 天前
【计算机毕业设计】基于Spring Boot的专科医院医疗管理系统
java·spring boot·课程设计
Bingo_BIG1 天前
Java Spring 批量修改,实体、接口、方法的定义
java·spring
画中有画1 天前
软件架构中质量属性(性能、安全、可扩展性)的权衡设计
java·运维·安全
Shaoxi Zhang1 天前
JAVA学习笔记035——对象和JSON格式
java·笔记·学习
赵丙双1 天前
CountDownLatch 源码分析
java·aqs·countdownlatch
余额瞒着我当琳1 天前
C++--深拷贝三件套 + swap + 写时拷贝 + vector 扩容 + reserve
java·开发语言·c++
thefool1122661 天前
翻转二叉树
java