Redis基础

2025/4/27

# Redis 是什么

# Redis 用法

# Redis 的优缺点

# Redis 的使用场景

# Redis 的几种模式

# 主从模式

主从模式(Master-Slave)是指在 Redis 中有一个主节点(Master)和一个或多个从节点(Slave)。主节点负责所有的写操作和读操作,而从节点负责复制主节点的数据,并可以处理读操作。多个从节点可以存在于一个主节点之下,以实现负载均衡和冗余。

特点:

  • 数据同步:从节点会定期从主节点获取数据快照(RDB)或增量数据(AOF),保持数据一致。
  • 读写分离:可以通过将读请求分发给从节点,从而减轻主节点的压力,提高系统的读性能。
  • 简单:主从模式的设置与管理相对简单,适合对高可用性要求不高的场景。

如何工作:

  • 主节点的任何写操作都会同步到所有从节点。
  • 从节点可以在不影响主节点的情况下处理读请求。
  • 如果主节点宕机,从节点将无法自动提升为主节点。

# 哨兵模式

哨兵模式(Sentinel)是 Redis 提供的一种高可用性解决方案。哨兵不仅监控主从节点的状态,还可以在主节点宕机时自动进行故障转移(failover),并选举新的主节点。

特点:

  • 高可用性:通过哨兵监控 Redis 实例,能够实现自动故障转移,确保系统的高可用性。
  • 监控:哨兵会定期检查主节点和从节点的状态,能够及时发现故障。
  • 通知:哨兵能够通过 API 通知客户端关于服务器状态的变化。
  • 配置管理:哨兵可以动态管理 Redis 集群的主从关系,无需手动干预。

如何工作:

  • 哨兵会持续监控主节点和从节点的健康状态。
  • 当哨兵检测到主节点宕机时,会启动故障转移过程,选举一个可用的从节点提升为新的主节点。
  • 更新配置后,其他从节点会自动重新配置为新的主节点。

# 主从模式与哨兵模式的区别

特点 主从模式 哨兵模式
主要功能 数据复制与读写分离 监控、故障转移和高可用性
故障处理 无自动故障转移 自动故障转移
结构 只有主节点和从节点 包含哨兵节点、主节点和从节点
数据一致性 数据同步,主从一致 故障转移后可能存在短暂的不一致
复杂性 简单,配置容易 复杂,需要配置哨兵节点
  • 主从模式适合数据复制和读写分离的场景,但在高可用性上存在局限性。
  • 哨兵模式提供了更全面的高可用解决方案,能够自动处理故障转移,适合对系统稳定性要求较高的应用场景。

总结:所以哨兵模式就是在主从模式的基础上加了个哨兵节点,用于自动故障转移+保证高可用性,然后主从节点还是跟主从模式一样,主节点负责所有的写操作和读操作,而从节点负责复制主节点的数据,并可以处理读操作。

上次更新: 5/6/2025