Redis2 分钟

Redis-内存过期和内存淘汰策略

Redis是一个内存数据库,内存往往是有限的。同时缓存与真实数据也存在数据不一致问题,所以Redis中的数据往往会设置TTL(time to live)。 重点:管理的是 被设置了 TTL 的 key 的生命周期 Redis 提供三种机制,用来处理已经过期的 key: 1. 定期删除(periodi…

Redis2 分钟

Redis-大key问题

什么是大key 没有特别明确的指标说明 xxx key是一个大key,但有一下指标可以作为参考。 从数据结构的角度出发 String类型:value值超过10KB Hash类型:field数量超过500或value值过大 List类型:元素数量超过1000 Set类型:成员数量超过5000 ZSet…

Redis4 分钟

Redis-高可用

Redis的高可用(HA High Avalibility)要解决的是: 1. 避免单点故障 2. 保证数据尽可能不丢失 3. 保证服务队外不中断 Redis 官方给出了三套HA的框架 特性 主从复制 哨兵模式 切片集群 数据分布 每个节点保存全量数据 每个节点保存全量数据 数据分片存储 读写分离…

Redis2 分钟

Redis-缓存

三大缓存问题 缓存击穿、缓存雪崩、缓存穿透 问题 缓存击穿 缓存雪崩 缓存穿透 定义 某个 热点 Key 过期 瞬间,海量并发请求直接打到数据库,造成数据库压力暴涨 大量 key 在某个时刻 同时过期 ,或 Redis 集群整体不可用,导致大量请求直接访问数据库,引起系统雪崩 客户端不断访问 不存在…

Redis3 分钟

Redis-持久化

RDB (Redis Database File) 核心:将某个时间点的所有数据 生成快照 (snapshot),保存为二进制文件(默认文件名:dump.rdb) 实现原理 1. Redis主进程fork一个子进程 2. 子进程与主进程基于操作系统的Copy On Write(COW)机制共享同一份…

Redis2 分钟

Redis-基础数据类型

Redis 常用数据类型总览 1. String(字符串) 数据结构 int:存储整数值 SDS(Simple Dynamic String):存储字符串或二进制数据 embstr:存储小于 44 字节(Redis 5.0)的字符串 raw:存储大于 44 字节的字符串 常用命令 应用场景 缓存对象…