Nacos的三层缓存是什么

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

容灾目录

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

本地缓存

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

服务端缓存

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

缓存目的

  • 提升性能:内存缓存减少延迟,本地缓存降低网络开销。
  • 容错能力:容灾目录和本地快照确保服务不可用时仍可用。
相关推荐
步步为营DotNet4 分钟前
深度解析CancellationToken:.NET中的优雅取消机制
java·前端·.net
JH30738 小时前
SpringBoot 优雅处理金额格式化:拦截器+自定义注解方案
java·spring boot·spring
Coder_Boy_9 小时前
技术让开发更轻松的底层矛盾
java·大数据·数据库·人工智能·深度学习
invicinble10 小时前
对tomcat的提供的功能与底层拓扑结构与实现机制的理解
java·tomcat
较真的菜鸟10 小时前
使用ASM和agent监控属性变化
java
黎雁·泠崖10 小时前
【魔法森林冒险】5/14 Allen类(三):任务进度与状态管理
java·开发语言
qq_124987075311 小时前
基于SSM的动物保护系统的设计与实现(源码+论文+部署+安装)
java·数据库·spring boot·毕业设计·ssm·计算机毕业设计
Coder_Boy_12 小时前
基于SpringAI的在线考试系统-考试系统开发流程案例
java·数据库·人工智能·spring boot·后端
Mr_sun.12 小时前
Day06——权限认证-项目集成
java
瑶山12 小时前
Spring Cloud微服务搭建四、集成RocketMQ消息队列
java·spring cloud·微服务·rocketmq·dashboard