Redis主从模式的搭建

为了降低每个Redis服务器的负载,可以设置几个Redis服务器作为从服务器专门用作用户的“读取”操作(即查询)。设置一个Redis服务器作为主服务器专门用作用户的“写”操作(即增删改)。主服务器的数据会自动同步到从服务器上。

其流程图:

 如何配置(完全由从服务器配置和维护主从关系):

1.在Redis的安装目录下的redis.conf中配置:

slaveof   192.168.39.159    6379
        (master服务器的IP) (端口号)

 2.查看当前Redis的进程号:

ps -A | grep redis

3.通过查出的进程号杀死当前Redis进程:

kill -9 进程号

 4.使用修改后的配置文件启动Redis:

redis-server /opt/redis-4.0.2/redis.conf

 5.在从服务器上登陆Redis:

redis-cli -h 127.0.0.1 -p 6379 -a 123456

此时看到的redis上的数据就是master服务器上的Redis上的数据。但是slave服务器对其数据是没有set(即写入)权限的,只能读。

设置slave服务器上的Redis拥有写权限:

slave-read-only  no

 即在Redis总的配置文件中将slave-read-only设置为no,其默认是yes。但是由于分工的原因,所以在从服务器上写数据是没有任何意义的。

原理:

设置好slave服务器之后,slave服务器会主动与master服务器发送SYNC命令与之创建连接,master在收到请求之后,会启动一个后台进程,创建当前redis保存数据的快照文件(dump.rdb),同时也会收集redis所有的写操作并缓存成文件,master在完成整个镜像的备份之后,会把数据文件发给slave,slave把文件保存到磁盘上,然后把数据加载到内存中,接着master会把所有的缓存的命令发给slave。

扫描二维码关注公众号,回复: 4097119 查看本文章

具体可以看博客:https://www.cnblogs.com/hepingqingfeng/p/7263782.html

猜你喜欢

转载自blog.csdn.net/My_name_is_ZwZ/article/details/84101628