缓存常见问题

缓存问题:

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

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

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

Redis和Memcached区别:

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

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

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

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

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

* 纯内存操作

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

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

Redis满了如何处理?

* 内存淘汰机制

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

处理10万+的数据并发?

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

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

相关推荐
2401_833269301 小时前
Java网络编程入门
java·开发语言
金銀銅鐵1 小时前
[Java] 如何将 Lambda 表达式对应的类保存到 class 文件中?
java·后端
それども2 小时前
Gradle 构建疑难杂症 Could not find netty-transport-native-epoll-linux-aarch_64.ja
java·服务器·gradle·maven
正儿八经的少年2 小时前
application.yml 系列配置文件作用与区别
java·配置文件
鱼很腾apoc3 小时前
【学习篇】第20期 超详解 C++ 多态:从语法规则到底层原理
java·c语言·开发语言·c++·学习·算法·青少年编程
lifewange3 小时前
Redis 集合(Set)运算完全指南
数据库·chrome·redis
cheems95273 小时前
[Spring MVC] 统一功能与拦截器实践总结
java·spring·mvc
Full Stack Developme4 小时前
Spring Boot 事务管理完整教程
java·数据库·spring boot
城管不管4 小时前
前后端远程协作
java
青云计划5 小时前
Feed流
java·后端·spring