• Redis——主从同步原理


      刚接触到Redis,首先对Redis有一个初步的了解。

      开源,免费,遵守BSD协议,key-value数据库。

      可以将内存中的数据保存在磁盘中,重启的时候可以再次加载使用。

      多种key-value类型的数据。

      主从模式的数据备份。

      高性能读写。

      redis所有操作都是原子性的,单个操作的原子性可以通过multi和exec指令包起来完成多个操作的原子性。

      一个key可以存储很大,可以达到1gb,不像memcached只能保存1mb的数据。

      主要缺点是数据库容量受物理内存的限制,不能作海量数据的高性能读写。

      主从同步,又叫主从复制,包括全量同步和增量同步。

      一.全量同步

      全量复制一般发生在slave(从服务器)初始化阶段,这时slava需要将master上所有的数据都复制一份,步骤如下:

      1.slave从服务器连接主服务器,并发送sync命令。

      2.主服务器接收到sync命令之后,开始执行bgsave命令(后台异步保存数据到磁盘并生成RDB文件)并使用缓冲区记录此后执行的所有写命令。

      3.主服务器完成bgsave后,向所有服务器发送快照文件(生成的RDB文件),并在发送期间继续记录被实行的写命令。

      4.从服务器接收到快照文件后,丢弃所有旧数据,载入收到的快照(RDB)。

      5.主服务器快照发送完毕后,开始向从服务器发送缓冲区中的写命令。

      6.从服务器完成对快照的载入,开始接收命令,并执行来自主服务器缓冲区的写命令。

      全量同步结束。

      

       二.增量同步

      Redis增量同步是指从服务器初始化后,正常工作时,master主服务器发生的写操作同步到slave从服务器的过程。主服务器每执行一个写命令就会向从服务器发送相同的写命令,从服务器接收并执行收到的写命令。

      增量同步完成。

      三.主从同步策略

      主从刚连接时,进行全量同步;全量同步结束后,进行增量同步。如果有需要,salve在任何时候都可以发起全量同步。redis总的策略时,首先会尝试增量同步,如果不成功,会进行全量同步。

  • 相关阅读:
    头像上传预览
    ajax、PHP、session做购物车
    ajax返回数据类型为JSON数据的处理
    省、市、区(县)三级联动
    ajax做显示信息以后用ajax、Bootstrp做弹窗显示信息详情
    ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库
    Jquery取属性值(复选框、下拉列表、单选按钮)、做全选按钮、JSON存储、去空格
    php练习 租房子
    例子 新闻发布
    注册审核
  • 原文地址:https://www.cnblogs.com/GoForMyDream/p/8548565.html
Copyright © 2020-2023  润新知