在多台服务器上简单实现Redis的数据主从复制

2014-11-24 18:29:45 · 作者: · 浏览: 0

Redis的主从复制功能非常强大,一个master可以拥有多个slave,而一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务器集群架构。下面我演示下怎样在多台服务器上进行Redis数据主从复制。这里我假设有两台服务器,一台是Windows操作系统(局域网IP:192.168.3.82),一台是Linux操作系统(局域网IP:192.168.3.90),在两个操作系统都安装redis,Windows操作系统使用cygwin工具进行安装,命令为:


可以通过"make test”命令判断是否安装成功。


这里我使用1个master以及2个slave(master在Windows下,一个slave在Windows下,一个slave在Linux下),基本流程是:



1. 在Windows服务器上创建两个目录,Demo1,Demo2,其中Demo1用来存放Master服务,Demo2用来存放Slave服务,


在Master服务中的配置文件修改:


bind 192.168.3.82


在Slave服务中的配置文件修改:


2. 在Linux服务器上创建一个目录,Demo,Demo存放Slave服务,在服务中的配置文件修改:


这样就完成了所有的配置。


3. 现在运行这3个服务,通过命令:


./redis-server redis.conf


来启动redis服务。


注意到,当我启动master,然后启动一个slave的时候,可以发现slave上:



会发送一个SYNC请求,从Master上面进行相应,而且它支持自动重连,即当master掉线的情况下,它会处于等待请求的状态。


而Master上:



能够接受Slave的应答,并且开始持久化操作,说明在Slave每次去连接Master的时候,都会去持久化磁盘。