您的位置:首页 > 数据库 > Redis

Redis的主从架构

2017-12-13 17:06 260 查看

Redis的主从架构

标签(空格分隔): Redis

上篇博文中我们简单介绍了下《Redis的单点安装》,该模式下,存在一些问题。这些问题也就是主从架构的好处。好处有以下两点

1、避免单点故障

2、面对现实生活中的读多写少的模式,实现读写分离

主从架构

架构图如图所示:



安装:

1、创建多实例

创建6379、6380、6381目录,分别将安装目录下的redis.conf拷贝到这三个目录下

结果:



2、修改配置文件redis.conf

例如:6380的配置文件

编辑6380/redis.conf下。将6379替换成6380即可

命令:

vim 6380/redis.conf
:%s/6379/6380/g ---将文件中6379字符串全替换成6380




同样,修改其他实例的配置文件

3、启动实例后检查



这样三个实例都创建好了,但是还没有做关联

4、设置主从

两个方法:

1、 在redis.conf中设置slaveof

a) slaveof

2、 使用redis-cli客户端连接到redis服务,执行slaveof命令

a) slaveof

第二种方式在重启后将失去主从复制关系

设置完成之后重启对应的从节点即可

ps -ef | grep redis

kill 进程号 —- 不要使用 -9 强制退出,因为怕redis还在处理业务

停止所有服务:

killall redis-server

5、查看主从状态

命令:

[root@node3 6380]# redis-cli
127.0.0.1:6379> replication info




role:角色

connected_slaves:从库数量

slave0:从库信息

6、安装完成,测试

提示:打开其他从库的客户端:redis-cli -p 6380

测试点:

1、在主库中设置后,从库查询有没有信息

2、在从库中写入数据

从从架构

架构图如图所示:



架构好处:

1、主库不做持久化操作,在从库中做持久化操作

2、如果所有的从库都主库中同步,主库压力太大。有些从库可以从空库中进行同步

安装:

修改redis.conf的slaveof 配置。将ip和port修改为某个从库即可。

测试:



从库只读配置

默认情况下redis数据库充当slave角色时是只读的不能进行写操作。如果需要开启从库写功能。则需要修改配置文件redis.conf 中的slave-read-only no (默认为:yes)

但是如果在从库中写入的数据,是不会同步到主库中的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: