zoukankan      html  css  js  c++  java
  • Redis主从架构

    Redis 支持简单并且易操作的主从复制功能,可以把从库看作是主库的镜像,数据同步基于秒级的同步
    一个主服务器可以有多个从服务器,同时不仅Master可以有从库,从服务器也可以有自己的从库

    在主从复制过程中,对于Master和Slave来讲都不会被阻塞。首先Master同步到一个或者多个Slave的时候,Master也可以正常的处理请求。Slave在同步的过程中,也可以先使用旧的同步数据,完成读请求。在同步新数据进行替换的瞬间是会有连接被阻塞的数据。

    在从库配置完成启动之后,不管是第一次同步还是重新同步,Slave都会发送一个sync的命令给Master。Master接受到请求之后执行 bgsave 的操作。保存一个rdb文件。

    在保存期间,所有的数据修改操作,master都会保存在一个缓冲区内。

    首先不论一个或者多个Slave来请求,Master都可以使用这个rdb文件发送给Slave,Slave接受到rdb文件之后,将文件内的数据加载到内存中。

    完成之后,Master会把缓冲区的写入操作通过 Redis 命令协议的方式,全部发送个Slave,这样的话,Slave就可以拥有一份和Master一样的数据。

    主从配置与实战

    直接在Slave服务器 Redis 配置文件里面添加 slaveof 192.168.1.1 6379 内容,指定同步那个服务器内容,重启生效(推荐),或者直接在客户端交互模式输入 slaveof 192.168.1.1 6379 命令,重启失效。

    127.0.0.1:6379> slaveof 192.168.1.1 6379
    OK
    127.0.0.1:6379> info Replication
    # Replication
    role:slave                 ## 当前角色
    master_host:192.168.1.1       ## Master地址
    master_port:6379                  ## Master端口
    master_link_status:up           ## 同步状态
    master_last_io_seconds_ago:3    ## 同步时间差
    master_sync_in_progress:0
    slave_repl_offset:57
    slave_priority:100
    slave_read_only:1
    connected_slaves:0
    master_repl_offset:0
    repl_backlog_active:0
    repl_backlog_size:1048576
    repl_backlog_first_byte_offset:0
    repl_backlog_histlen:0
  • 相关阅读:
    加油站
    UIScrollView控件实现图片轮播
    键值编码 KVC
    键值观察 KVO
    弹出视图集合
    关于Page翻页效果, PageViewConrtoller
    Event Handling Guide for iOS--事件驱动指南
    远程控制
    耳机线控
    ASI框架的使用
  • 原文地址:https://www.cnblogs.com/songguoyou/p/11884184.html
Copyright © 2011-2022 走看看