zoukankan      html  css  js  c++  java
  • Redis主从复制、哨兵模式

    1、主从复制是什么?

    主从复制就是主机数据更新后根据配置和策略,自动同步到备机的master/slave机制,Master以写为主,Slave以读为主,这样能更好地实现读写分离,性能扩展,容灾快速恢复

    2、准备,拷贝多个redis.conf,开启daemonize yes改写pid文件名指定端口log文件名,dump.rdb名

    分别配置端口6379 6380 6381 并更改其他配置 如下:

        

        

          

     3、用 info replication 的命令查看主从复制的相关信息(这里79是主机,80,81是从机)slaveof <ip><port>命令成为某个实例的服务器

      

    4、一主二仆模式演示:常见现象一,主机写,从机读

      

    从机是否能写?(从机只读)

     从机是否能复制主机之前已经写入的数据?(从机宕机,主机写入数据,从机再重启)

     

     主机宕机,从机上位还是原地待命?(待命)

     

     主机恢复,新增记录,从机是否还能顺利复制?(是,主机恢复之后,依然是主机,恢复原来的一主二从体系)

     

     如果从机宕机,恢复后,数据还能是否能跟上?(不能,从机宕机,恢复后是自己的主机,数据跟不上)

      

     

     5、复制原理

    每次从机联通后,都会给主机发送sync指令

    主机立刻进行存盘操作,发送RDB文件给从机

    从机接收到RDB文件后,进行全盘加载

    之后每次主机写操作,都会立刻发送给从机,从机执行相同的命令

     6、薪火相传

    上一个slave可以是下一个slave的Master,slave同样可以接收到其他slaves的链接和同步请求,那么该slave作为了链条中的下一个的master。可以有效减轻master的写压力,去中心化降低风险

      

     7、哨兵模式

    能够后台监控主机是否故障,如果故障了根据投票数自动将从库转换为主库

    配置哨兵模式:调整为一主二仆,新建一个sentinel.conf文件,在配置文件中写入:

     

     启动哨兵模式:执行redis-sentinel /usr/local/redis-5.0.5/sentinel.conf 命令

    主机 6379宕机后,查看哨兵模式选举,6381晋升为主机,6379恢复后默认为从机

     

     

  • 相关阅读:
    (紫书,感谢作者)第7章暴力求解法
    明日更新
    明天更新
    UVa11882最大的数(dfs+剪枝)
    UVa12569树上的机器人的规划
    es6中的reduce方法?
    浏览器是如何渲染页面的?
    判断是不是一个数组?
    判断是否是一个数组?
    var与let的区别?
  • 原文地址:https://www.cnblogs.com/jing5464/p/13275625.html
Copyright © 2011-2022 走看看