Redis-内存过期和内存淘汰策略
Redis是一个内存数据库,内存往往是有限的。同时缓存与真实数据也存在数据不一致问题,所以Redis中的数据往往会设置TTL(time to live)。 重点:管理的是 被设置了 TTL 的 key 的生命周期 Redis 提供三种机制,用来处理已经过期的 key: 1. 定期删除(periodi…
TOPIC
6 篇相关文章
Redis是一个内存数据库,内存往往是有限的。同时缓存与真实数据也存在数据不一致问题,所以Redis中的数据往往会设置TTL(time to live)。 重点:管理的是 被设置了 TTL 的 key 的生命周期 Redis 提供三种机制,用来处理已经过期的 key: 1. 定期删除(periodi…
什么是大key 没有特别明确的指标说明 xxx key是一个大key,但有一下指标可以作为参考。 从数据结构的角度出发 String类型:value值超过10KB Hash类型:field数量超过500或value值过大 List类型:元素数量超过1000 Set类型:成员数量超过5000 ZSet…
Redis的高可用(HA High Avalibility)要解决的是: 1. 避免单点故障 2. 保证数据尽可能不丢失 3. 保证服务队外不中断 Redis 官方给出了三套HA的框架 特性 主从复制 哨兵模式 切片集群 数据分布 每个节点保存全量数据 每个节点保存全量数据 数据分片存储 读写分离…
三大缓存问题 缓存击穿、缓存雪崩、缓存穿透 问题 缓存击穿 缓存雪崩 缓存穿透 定义 某个 热点 Key 过期 瞬间,海量并发请求直接打到数据库,造成数据库压力暴涨 大量 key 在某个时刻 同时过期 ,或 Redis 集群整体不可用,导致大量请求直接访问数据库,引起系统雪崩 客户端不断访问 不存在…
RDB (Redis Database File) 核心:将某个时间点的所有数据 生成快照 (snapshot),保存为二进制文件(默认文件名:dump.rdb) 实现原理 1. Redis主进程fork一个子进程 2. 子进程与主进程基于操作系统的Copy On Write(COW)机制共享同一份…
Redis 常用数据类型总览 1. String(字符串) 数据结构 int:存储整数值 SDS(Simple Dynamic String):存储字符串或二进制数据 embstr:存储小于 44 字节(Redis 5.0)的字符串 raw:存储大于 44 字节的字符串 常用命令 应用场景 缓存对象…