Redis集群教程(一):主从复制

本文介绍了Redis的内存数据库特性,重点讲解了主从复制模式在实现高可用性和数据备份中的应用,包括配置步骤、优缺点及持久化模式(RDB和AOF)的比较。
摘要由CSDN通过智能技术生成

Redis简介

Redis是一个高性能的开源内存数据库,被广泛应用于缓存、会话存储、实时分析、消息队列等多个领域。其独特的特性,包括快速的读写操作、支持多种数据结构(如字符串、哈希、列表、集合、有序集合等)、持久化支持、以及灵活的扩展性,使得它成为许多应用架构中不可或缺的组件。

        随着应用规模的不断增长,单节点Redis的性能和容量限制成为了一些应用所面临的挑战。为了满足更大规模的数据存储需求、提高系统的可用性和稳定性,引入Redis集群成为了一种常见的解决方案。

Redis集群简介

Redis有三种主要的集群模式,用于在分布式环境中实现高可用性和数据复制。这些集群模式分别是:主从复制(Master-Slave Replication)、哨兵模式(Sentinel) 和Redis Cluster模式

一、主从复制模式

主从复制是Redis最简单的集群模式。这个模式主要是为了解决单点故障的问题,所以将数据复制多个副本中,这样即使有一台服务器出现故障, 其他服务器依然可以继续提供服务。

        主从模式中,包括一个主节点(Master) 和一个或多个从节点(Slave) 。主节点负责处理所有写操作和读操作,而从节点则复制主节点的数据,并且只能处理读操作。当主节点发生故障时,可以将一个从节点升级为主节点,实现故障转移(需要手动实现)。

优点:

  • 主从复制的优势在于简单易用,适用于读多写少的场景。它提供了数据备份功能,并且可以有很好的扩展性,只要增加更多的从节点,就能让整个集群的读的能力不断提升。

劣势:

  • 最大的缺点,就是不具备故障自动转移的能力,没有办法做容错和恢复。

实现方式:

主从集群架构图:

现在需要准备3个实例,因为在同一台电脑上操作,所以我们准备3份不同的配置文件和目录就可以了

1)创建目录

创建3个目录,6001,6002,6003 文件夹,复制 redis 配置文件到这三个文件夹中,6001 为 master主,6002和6003位slave从

2)修改配置

修改redis的配置文件,持久化模式(文章末尾有介绍)改为默认的RDB模式,AOF保持关闭状态,并设置端口为6001、6002、6003,设置rdb文件路径

#设置端口号
port 6001
#开启RDB模式
save 900 1      # 在900秒(15分钟)内,如果至少有1个键被修改,则生成快照
save 300 10     # 在300秒(5分钟)内,如果至少有10个键被修改,则生成快照
save 60 10000   # 在60秒内,如果至少有10000个键被修改,则生成快照
# 关闭AOF
appendonly no
#更改rdb文件路径
dir ./6001/
3)开启主从关系配置

只需在两台从redis配置文件中写入一段配置

slaveof <masterip> <masterport>

slaveof 127.0.0.1 6001

注意:如果master主redis需要密码,需要增加一段配置

masterauth <password>
4) 启动redis
#启动6001
redis-server.exe 6001/redis.windows.conf

#启动6002和6003
redis-server.exe 6002/redis.windows.conf
redis-server.exe 6003/redis.windows.conf

5)测试

通过redis-cli连接redis命令:

# -h 服务IP -p 端口 -a 密码
redis-cli.exe -h 127.0.0.1 -p 6001 -a 111111
  • 使用redis-cli连接6001,执行set str 666

  • 使用redis-cli连接6002,执行get str

从服务器只处理读操作,我们可以看到,主 redis 存储的值,我们通过两台从服务器都可以获取。

其他知识点:
关于redis的持久化模式介绍:

RDP:

RDB是将Redis的内存中的数据定期保存到磁盘上,以防止数据在Redis进程异常退出或服务器断电等情况下丢失。

  • 优点:快照文件小。恢复速度快,适合做备份和灾难恢复。

  • 缺点:定期更新可能会丢数据

AOF:

AOF是将Redis的所有写操作追加到AOF文件(Append Only File)的末尾,从而记录了Redis服务器运行期间

所有修改操作的详细记录。当Redis重 新启动时,可以通过执行AOF文件中保存的写操作来恢复数据。

  • 优点:可以实现更高的数据可靠性、支持更细粒度的数据恢复适合做数据存档和数据备份。

  • 缺点:文件大占用空间更多,每次写操作都需要写磁盘导致负载较高

关注我,学习更多简单好理解的编程和架构知识!明天分享第二篇哨兵模式(Sentinel)。
关注我 不迷路 微信扫

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员的小黑板

请作者喝一杯咖啡吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值