struct
redis常用数据结构以及各自应用场景
| 需求场景 | 推荐数据结构 | 核心理由 |
|---|---|---|
| 普通缓存 / 计数器 / 分布式锁 | String | 简单、原子操作、支持多种编码 |
| 对象存储 / 购物车 | Hash | 字段级操作,比 String 序列化更灵活 |
| 消息队列 / 栈 / 最新列表 | List | 双向操作,FIFO/LIFO |
| 去重 / 共同好友 / 抽奖 | Set | 自动去重,支持集合运算 |
| 排行榜 / 延时队列 | ZSet | 自带排序,支持范围查询 |
| 海量用户签到 / 状态位 | Bitmap | 极致省空间 (1 bit 代表一个状态) |
| 亿级 UV 统计 (允许误差) | HyperLogLog | 固定 12KB 内存,无论数据量多大 |
| 附近的人 / 距离计算 | Geo | 内置地理算法,基于 ZSet 实现 |