• 技术文章 >数据库 >Redis

    redis集群怎么同步

    (*-*)浩(*-*)浩2019-11-22 09:51:14原创1504

    主从复制:

    1、redis的复制功能是支持多个数据库之间的数据同步。一类是主数据库(master)一类是从数据库(slave),主数据库可以进行读写操作,当发生写操作的时候自动将数据同步到从数据库,而从数据库一般是只读的,并接收主数据库同步过来的数据,一个主数据库可以有多个从数据库,而一个从数据库只能有一个主数据库。 (推荐学习:Redis视频教程

    2、通过redis的复制功能可以很好的实现数据库的读写分离,提高服务器的负载能力。主数据库主要进行写操作,而从数据库负责读操作。

    Redis复制工作原理的总结如下:

    1. 如果设置了一个Slave,无论是第一次连接还是重连到Master,它都会发出一个SYNC命令;

    2. 当Master收到SYNC命令之后,会做两件事:

    a) Master执行BGSAVE,即在后台保存数据到磁盘(rdb快照文件);

    b) Master同时将新收到的写入和修改数据集的命令存入缓冲区(非查询类);

    3. 当Master在后台把数据保存到快照文件完成之后,Master会把这个快照文件传送给Slave,而Slave则把内存清空后,加载该文件到内存中;

    4. 而Master也会把此前收集到缓冲区中的命令,通过Reids命令协议形式转发给Slave,Slave执行这些命令,实现和Master的同步;

    5. Master/Slave此后会不断通过异步方式进行命令的同步,达到最终数据的同步一致;

    6. 需要注意的是Master和Slave之间一旦发生重连都会引发全量同步操作。但在2.8之后版本,也可能是部分同步操作。

    更多Redis相关技术文章,请访问Redis数据库使用入门教程栏目进行学习!

    以上就是redis集群怎么同步的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:redis
    上一篇:redis为什么比mysql快 下一篇:redis本身可以限流么

    相关文章推荐

    • redis单线程是什么意思• redis数据库主要存什么• redis怎么实现数据同步• redis怎么保证数据一致性

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网