redis的主从复制:
主从复制介绍:redis的主从复制情况下,一个master节点下可以有多个slave节点,而且每个slave节点又可以有很多slave节点,形成很大的集群量级,我简单画个图,如下:
主从复制特点:
- master可以有多个slave
- 除了多个slave连到相同的master外,slave也可以连接其他slave形成图状结构
- 主从复制不会阻塞master。也就是说当一个或多个slave与master进行初次同步数据时,master可以继续处理client发来的请求。相反slave在初次同步数据时则会阻塞不能处理client的请求。
- 主从复制可以用来提高系统的可伸缩性,我们可以用多个slave 专门用于client的读请求,比如sort操作可以使用slave来处理。也可以用来做简单的数据冗余
- 可以在master禁用数据持久化,只需要注释掉master 配置文件中的所有save配置,然后只在slave上配置数据持久化。
redis的主从复制搭建过程:
我操作的环境是window环境,linux环境配置与window情况类似,主要步骤如下:
第一步:在redis文件夹下放入redis
第二步:修改redis.window.conf (要是linux环境下,修改redis.conf)
第三步:启动redis-server服务 redis-server.exe redis.window.conf (linux下 ./redis-server redis.conf(不一定就是redis.conf))
第四步,验证从点是否成功在master节点可以看到:
第五步:客户端连接测试:
注意:redis的主从复制还可以设置密码,在redis.conf文件修改
在客户端连接的时候就需要输入密码了,我这是测试,就没配置密码
requirepass huhy
redis-cli -p 6371|2|3 -a huhy
redis的适用场景:
1:读写分离:数据量变得庞大的时候,读写分离还是很有必要的 master用于write ,其他节点用于read
2:数据备份
3:主从切换的前身