6.2 KiB
6.2 KiB
Redis 基础概念
NoSQL 数据库概述
- NoSQL 数据库的特点和分类
- 关系型数据库 vs NoSQL 数据库
- NoSQL 数据库的应用场景
Redis 简介
- Redis 的定义和特点
- Redis 的数据结构
- Redis 的应用场景
- Redis 的优势和局限性
Redis 架构
- Redis 的内存模型
- Redis 的单线程模型
- Redis 的事件驱动机制
实践操作
- 了解 NoSQL 数据库的分类和特点
- 分析 Redis 在不同场景下的应用优势
Redis 环境搭建
Redis 安装
- Linux 环境下的安装
Redis 配置
- 配置文件详解
- 常用配置参数
- 安全配置
- 性能调优配置
Redis 启动和连接
- Redis 服务启动
- Redis 客户端连接
- 远程连接配置
- 连接池配置
实践操作
- 在本地环境安装 Redis
- 配置 Redis 服务
- 使用客户端连接 Redis
Redis 数据类型
字符串 (String)
- 字符串的特点和应用
- 基本操作命令
- 数值操作
- 位操作
列表 (List)
- 列表的特点和应用
- 基本操作命令
- 阻塞操作
- 列表的应用场景
集合 (Set)
- 集合的特点和应用
- 基本操作命令
- 集合运算
- 随机操作
有序集合 (Sorted Set)
- 有序集合的特点和应用
- 基本操作命令
- 范围操作
- 排行榜应用
哈希 (Hash)
- 哈希的特点和应用
- 基本操作命令
- 批量操作
- 对象存储应用
实践操作
- 使用不同数据类型存储数据
- 实现简单的缓存功能
- 构建用户信息存储系统
Redis 基本命令
键操作命令
- 键的命名规范
- 键的查询和遍历
- 键的过期设置
- 键的删除和重命名
数据库操作
- 多数据库概念
- 数据库切换
- 数据库清空
- 数据库信息查看
事务操作
- 事务的概念
- MULTI/EXEC 命令
- WATCH 命令
- 事务的特性和限制
脚本操作
- Lua 脚本简介
- EVAL 和 EVALSHA 命令
- 脚本缓存
- 脚本的应用场景
实践操作
- 管理 Redis 键空间
- 使用事务保证操作原子性
- 编写简单的 Lua 脚本
Redis 持久化
RDB 持久化
- RDB 的工作原理
- RDB 配置参数
- 手动触发 RDB
- RDB 文件的恢复
AOF 持久化
- AOF 的工作原理
- AOF 配置参数
- AOF 重写机制
- AOF 文件的恢复
混合持久化
- 混合持久化的优势
- 配置混合持久化
- 数据恢复策略
持久化策略选择
- RDB vs AOF 对比
- 不同场景下的选择
- 性能影响分析
实践操作
- 配置 RDB 持久化
- 配置 AOF 持久化
- 测试数据恢复功能
Redis 主从复制
主从复制概述
- 主从复制的概念
- 主从复制的优势
- 复制的工作原理
主从复制配置
- 主服务器配置
- 从服务器配置
- 复制参数调优
复制的特性
- 异步复制
- 部分重同步
- 无磁盘复制
- 复制偏移量
主从切换
- 手动主从切换
- 故障处理
- 数据一致性
实践操作
- 搭建主从复制环境
- 测试数据同步
- 模拟故障切换
Redis 哨兵模式
哨兵模式概述
- 哨兵的作用
- 哨兵的工作原理
- 哨兵集群的优势
哨兵配置
- 哨兵配置文件
- 监控配置
- 故障转移配置
- 通知配置
故障检测和转移
- 主观下线和客观下线
- 故障转移流程
- 新主服务器选举
- 配置传播
哨兵集群管理
- 哨兵节点管理
- 配置更新
- 监控和日志
实践操作
- 部署哨兵集群
- 配置故障转移
- 测试高可用性
Redis 集群
集群概述
- 集群的概念和优势
- 集群 vs 主从复制
- 集群的适用场景
集群架构
- 槽位分配机制
- 节点通信协议
- 集群拓扑结构
集群搭建
- 集群节点配置
- 集群初始化
- 节点加入和移除
- 槽位迁移
集群管理
- 集群状态监控
- 故障检测和恢复
- 集群扩容和缩容
- 数据迁移
实践操作
- 搭建 Redis 集群
- 测试数据分片
- 进行集群扩容
Redis 性能优化
性能监控
- 性能指标分析
- 监控工具使用
- 慢查询日志
- 内存使用分析
内存优化
- 内存使用策略
- 数据结构优化
- 过期策略配置
- 内存碎片处理
网络优化
- 连接池配置
- 管道技术
- 批量操作
- 网络延迟优化
配置优化
- 核心参数调优
- 持久化优化
- 复制优化
- 系统级优化
实践操作
- 监控 Redis 性能
- 优化内存使用
- 测试性能提升效果
Redis 安全管理
访问控制
- 密码认证
- 用户管理 (ACL)
- 权限控制
- IP 白名单
网络安全
- 端口安全
- SSL/TLS 加密
- 防火墙配置
- VPN 访问
数据安全
- 数据加密
- 敏感数据处理
- 备份安全
- 审计日志
安全最佳实践
- 安全配置检查
- 漏洞防护
- 安全更新
- 应急响应
实践操作
- 配置访问控制
- 启用 SSL 加密
- 实施安全策略
Redis 应用实战
缓存应用
- 缓存策略
- 缓存穿透、击穿、雪崩
- 缓存更新策略
- 分布式缓存
会话管理
- 会话存储
- 分布式会话
- 会话过期处理
- 安全考虑
消息队列
- 发布订阅模式
- 消息队列实现
- 延时队列
- 可靠性保证
排行榜系统
- 实时排行榜
- 历史排行榜
- 分页查询
- 性能优化
分布式锁
- 锁的实现原理
- 锁的获取和释放
- 锁的超时处理
- 可重入锁
实践操作
- 构建缓存系统
- 实现会话管理
- 开发消息队列
- 创建排行榜功能
- 实现分布式锁
Redis 运维管理
备份和恢复
- 备份策略
- 自动备份
- 数据恢复
- 灾难恢复
监控和告警
- 监控指标
- 告警规则
- 监控工具
- 性能分析
日志管理
- 日志配置
- 日志分析
- 问题排查
- 日志轮转
版本升级
- 升级策略
- 兼容性检查
- 滚动升级
- 回滚方案
实践操作
- 制定备份策略
- 配置监控系统
- 进行版本升级
Redis 生态工具
客户端工具
- Redis CLI
- 图形化管理工具
- 编程语言客户端
- 连接池工具
集群管理工具
- Redis Cluster Manager
- 第三方集群工具
- 自动化部署工具
监控工具
- Redis Monitor
- Prometheus + Grafana
- 第三方监控方案
实践操作
- 使用管理工具
- 集成开发框架
- 配置监控方案