1.1 1. leetcode hot100: 91-100
2.1 基本数据结构用法
- 字符串(String)
- 列表(List)
- 哈希(Hash)
- 集合(Set)
- 有序集合(Sorted Set)
2.2 基本数据结构用途
- 字符串:缓存、计数器等
- 列表:队列、栈等数据结构
- 哈希:对象属性存储
- 集合:唯一值存储、集合运算
- 有序集合:排行榜、优先级队列
2.3 高级数据结构用法
- HyperLogLog
- Bitmaps
- Geospatial索引
- Streams
2.4 高级数据结构用途
- HyperLogLog:独立访客统计、在线用户计数等
- Bitmaps:用户行为标记、交集、并集计算等
- Geospatial索引:附近的人、地点推荐等
- Streams:实时数据处理、事件溯源等
2.5 基本数据结构源码
- Redis的源码使用C语言编写
- 源码文件对应不同的数据结构实现
2.6 集群、哨兵、高可用
- Redis Cluster:分布式解决方案,数据分片、高可用
- Redis Sentinel:监控和管理主从复制,故障转移
- 高可用性:系统持续提供服务的能力
2.7 底层DB实现、RocksDB、B+树、LSM树、平衡树对比
- Redis底层数据库实现:跳跃表、字典
- RocksDB:持久化键值存储库
- B+树:数据库索引实现
- LSM树:持久化存储的数据结构
- 平衡树:自平衡搜索树
2.8 生产实践
- 分布式锁:Redisson、RedLock
- 缓存淘汰策略:LRU、LFU、TTL
- Redisson:Java驻留内存数据网格
- 红锁(RedLock):分布式锁算法
- RESP协议:Redis序列化协议
2.9 Redis持久化机制
- RDB和AOF机制
- 优缺点和适用场景
2.10 Redis事务
- 事务特性和原子性
- MULTI、EXEC、DISCARD、WATCH
2.11 Pub/Sub模式
- 发布/订阅模式
- PUBLISH、SUBSCRIBE
2.12 Lua脚本
- 在Redis中使用Lua脚本
- Redis数据结构和命令的使用
2.13 Redis Cluster
- 概念和工作原理
- 数据分片和故障转移
2.14 Redis性能调优
- 性能瓶颈和调优策略
- 配置参数、数据结构、命令优化
2.15 Redis安全性
- 设置访问密码和访问控制
- 安全风险和常见威胁
- 配置和安全策略保护