Files
Cloud-book/数据库/Redis_2025/redis_tpl.md
2025-08-27 17:10:05 +08:00

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
  • 第三方监控方案

实践操作

  • 使用管理工具
  • 集成开发框架
  • 配置监控方案