缓存常见问题

缓存问题:

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

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

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

Redis和Memcached区别:

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

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

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

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

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

* 纯内存操作

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

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

Redis满了如何处理?

* 内存淘汰机制

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

处理10万+的数据并发?

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

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

相关推荐
小小寂寞的城11 分钟前
JAVA观察者模式demo【设计模式系列】
java·观察者模式·设计模式
xinghunzhiye201018 分钟前
redis升级
数据库·redis·缓存
探索java36 分钟前
Java并发编程中的StampedLock详解:原理、实践与性能优化
java·stampedlock
界面开发小八哥1 小时前
「Java EE开发指南」如何用MyEclipse将Java项目转换为Web项目?
java·ide·java-ee·eclipse·开发工具·myeclipse
pobu1681 小时前
aksk前端签名实现
java·前端·javascript
kk在加油1 小时前
Redis基础数据结构
数据结构·数据库·redis
一个天蝎座 白勺 程序猿2 小时前
飞算JavaAI进阶:重塑Java开发范式的AI革命
java·开发语言·人工智能
前端 贾公子2 小时前
tailwindCSS === 使用插件自动类名排序
java·开发语言
没有bug.的程序员2 小时前
JAVA面试宝典 -《Spring Boot 自动配置魔法解密》
java·spring boot·面试