20231007-2023105充电计划

发布时间 2023-10-07 13:12:25作者: mufanqiang1998

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安全性

  • 设置访问密码和访问控制
  • 安全风险和常见威胁
  • 配置和安全策略保护