缓存常见问题

缓存问题:

  1. 缓存穿透:访问一个不存在的缓存

  2. 缓存击穿:大批用户访问热点数据的时候,热点数据缓存失效,大量访问数据库

  3. 缓存雪崩:大批量缓存全部失效

Redis和Memcached区别:

  1. Redis可操作数据类更加丰富,memcached只有单一的键值对

  2. memcached没有原生的集群,需要依靠客户端往集群中写入数据,Redis的原生cluster集群更加优秀

Redis的单线程模型原理机制:

* socket--IO多路复用--文件事件分派器--连接应答处理器

为什么Redis单线程效率还很高?

* 纯内存操作

* 核心是基于非阻塞的IO多路复用机制的

* 单线程避免了多线程切换上下文的操作

Redis满了如何处理?

* 内存淘汰机制

* allkeys-lru:当空间不足以写入新数据时,在键空间中,移除最近最少使用的key

处理10万+的数据并发?

* 主从架构--读写分离--支撑10万+QPS架构

* 主负责写操作,从用来读操作

相关推荐
WeiQ_33 分钟前
解决phpstudy 8.x软件中php8.2.9没有redis扩展的问题
数据库·redis·缓存
学到头秃的suhian4 小时前
Maven
java·maven
小坏讲微服务4 小时前
Docker-compose 搭建Maven私服部署
java·spring boot·后端·docker·微服务·容器·maven
chxii4 小时前
Maven 详解(下)
java·maven
inferno4 小时前
Maven基础(二)
java·开发语言·maven
杨武博4 小时前
关于maven中pom依赖冲突问题记录
java·maven
陈果然DeepVersion6 小时前
Java大厂面试真题:Spring Boot+Kafka+AI智能客服场景全流程解析(十)
java·spring boot·ai·kafka·面试题·向量数据库·rag
但要及时清醒6 小时前
ArrayList和LinkedList
java·开发语言
一叶飘零_sweeeet6 小时前
从测试小白到高手:JUnit 5 核心注解 @BeforeEach 与 @AfterEach 的实战指南
java·junit