Redis知识体系

1. 概述

本文总结了Redis基本的核心知识体系,在学习Redis的过程中,可以将其作为学习框架,以此更好的从整体的角度去理解和学习Redis的内容和设计思想。同时知识框架带来的好处是可以帮助我们更好的进行记忆,在大脑中形成相应的知识网。

内容说明 :本位非详细的介绍Redis的实现原理或某个特定的实现原理,提供的是一个系统的知识框架,后续可以针对性的进行分模块学习。

在应用实践模块,介绍了常见的一些问题与场景,非Redis所有的应用场景,不同业务使用的方式不同,Redis的使用场景可以非常广。

阅读说明:在文章的末尾会提供对应的思维导图,文字内容相对较分散,阅读会较繁琐,从思维导图可以快速的了解全貌,可直接查看。

2. Redis知识体系

知识体系核心分为四大类,分别为:

1.Redis数据结构

2.高可用|高扩展

3.核心机制与能力

4.应用实践

2.1 Redis数据结构

常用类型

  • String
  • Set
  • Hash
  • List
  • Zset

特殊类型

  • HyperLogLogs(基数统计)
  • BitMaps(位图)
  • geospatial(地理位置)

流(Redis5.0)

  • Stream(强大的支持多播的可持久化的消息队列)

对象机制

  • redisObject
  • 对象共享
  • 对象淘汰

2.2 高可用|高扩展

内容

  • 哨兵机制
  • 主从复制
      全量复制
      增量复制(命令传播)
      部分重同步
      同源增量同步
  • 集群模式(Redis Cluster)

可参考文章:
Redis主从复制的原理一 之 概述
Redis主从复制原理二 之 主从复制工作流程
Redis高可用架构
Redis故障转移

2.3 核心机制与能力

持久化机制

  • RDB
  • AOF
  • 混合模式(4.0)

订阅/发布

  • 基于频道(Channel)
  • 基于模式(Pattern)

事件机制

  • 文件事件
      NIO,Reactor模式
  • 时间事件

事务

  • 标准的事务执行
  • CAS操作实现乐观锁

线程IO模型

  • None-Blocking + 事件轮询(多路复用)

管道

  • Pipelline

存储管理

  • Key淘汰策略
  • Key过期策略

可参考文章:
Redis内存淘汰策略
Redis Key过期策略

2.4 应用实践

缓存问题

  • 缓存数据库数据一致性
  • 缓存击穿
  • 缓存穿透
  • 缓存雪崩

使用场景

  • 分布式锁
  • 延迟队列
  • 限流
  • 位图

3.思维导图

相关推荐
Coder_Boy_5 小时前
技术让开发更轻松的底层矛盾
java·大数据·数据库·人工智能·深度学习
helloworldandy5 小时前
使用Pandas进行数据分析:从数据清洗到可视化
jvm·数据库·python
数据知道7 小时前
PostgreSQL 故障排查:如何找出数据库中最耗时的 SQL 语句
数据库·sql·postgresql
qq_12498707537 小时前
基于SSM的动物保护系统的设计与实现(源码+论文+部署+安装)
java·数据库·spring boot·毕业设计·ssm·计算机毕业设计
枷锁—sha7 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
Coder_Boy_7 小时前
基于SpringAI的在线考试系统-考试系统开发流程案例
java·数据库·人工智能·spring boot·后端
Gain_chance7 小时前
35-学习笔记尚硅谷数仓搭建-DWS层最近n日汇总表及历史至今汇总表建表语句
数据库·数据仓库·hive·笔记·学习
此生只爱蛋7 小时前
【Redis】主从复制
数据库·redis
马猴烧酒.7 小时前
【面试八股|JAVA多线程】JAVA多线程常考面试题详解
java·服务器·数据库
天天爱吃肉82188 小时前
跟着创意天才周杰伦学新能源汽车研发测试!3年从工程师到领域专家的成长秘籍!
数据库·python·算法·分类·汽车