码迷,mamicode.com
首页 > 其他好文 > 详细

辛星浅析Redis中的主从复制

时间:2015-02-24 12:34:10      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:redis   主从复制   辛星   nosql   

    首先简单介绍下Redis中的复制:

    (1)同一个master可以同步多个slave。

    (2)slave同样可以接受其他slaves的连接和同步请求,这样可以有效的分担master的同步压力。

    (3)master  server是以非阻塞的方式为slaves提供服务的,所以在master-slave同步期间,客户端仍然可以提交查询或修改请求。

    (4)slave   server同样是以非阻塞的方式完成数据同步。在同步期间,如果有客户端提交查询请求,Redis则返回同步之前的数据。

    (5)为了分担master的读操作压力,slave服务器可以为客户端提供只读操作的服务,写服务仍然必须由master来完成。

    (6)master可以将数据的保存操作交给slaves来完成,从而避免了在master中要有独立的进程来完成此操作。


     复制的工作原理:

     在slave启动并连接到master之后,它将主动发送一个SYNC命令。此后master将启动后台存盘进程,同时收集所有接收到的用于修改数据集的命令,在后台进程执行完毕后,master将传送整个数据库文件到slave,以完成一次完全同步。而slave服务器在接受到数据库文件后将其存盘并且加载到内存中。此后,master继续将所有已经收集到的修改命令和新的修改命令依次传送给slaves,而slaves将在本次执行完这些数据修改命令,从而达到最终的数据同步。如果slave和master之间的连接出现断连现象,slave可以自动重练master,但是在连接成功之后,一次完全同步将会被自动执行。

   


        复制的配置:

        直接把配置文件中的#slaveof   <masterip>  <masterport>   中的#去掉,并且修改为相应的信息即可。






















辛星浅析Redis中的主从复制

标签:redis   主从复制   辛星   nosql   

原文地址:http://blog.csdn.net/xinguimeng/article/details/43924777

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!