博客
关于我
redis的主从复制详解
阅读量:775 次
发布时间:2019-03-24

本文共 927 字,大约阅读时间需要 3 分钟。

一.主从复制简介

互联网的“三高”架构指的是高并发、高性能和高可用性。高并发意味着同时处理大量用户访问,高性能则要求系统运行效率极高,而高可用性则意味着系统在面临故障时仍能持续运作。

Redis的高可用性问题

Redis作为一个高性能的键值存储系统,存在以下问题:

  • 机器故障

    • 现象:硬盘故障或系统崩溃导致数据丢失。
    • 本质:可能对业务造成灾难性影响。
    • 结论:单机 Redis的风险较高,通常会放弃使用。
  • 容量瓶颈

    • 现象:内存不足导致性能下降,需要不断升级内存有限。
    • 本质:硬件资源有限,难以支持大规模业务发展。
    • 结论:需采取分布式策略,使用多台 Redis 服务器。
  • 为了高可用,建议使用多个 Redis 服务器(主从复制),数据互相复制,确保高可用性和数据冗余。

    二. 主从复制工作流程

    主从复制分为三个阶段:

  • 数据同步阶段

    主节点(Master)将数据实时复制到从节点(Slave),确保数据一致性。

  • 命令传输阶段

    主节点执行命令后,将为从节点传输该命令的结果,保持两节点完全一致。

  • 三. 主从复制案例

    方式1:命令配置方式

    手动在客户端发送命令:

    # master配置slaveof 

    方式2:启动参数方式

    # Slave启动时指定主节点redis-server -slaveof 

    方式3:配置文件方式

    #_slave配置文件中添加slaveof 

    四. 降临问题解答

    • 断开连接后不会丢失数据,仅停止接受-master的数据同步。
    • 权限设置:确保主从节点有正确的密码,防止未授权访问。

    五. 主从复制意义

  • 提升读写能力:分离读写负载,优化性能。
  • 负载均衡:多个从节点分担读取压力。
  • 故障恢复:主节点故障时,从节点接手服务。
  • 数据冗余:提供持久化备份,确保数据安全。
  • 高可用基础:支持哨兵模式和集群方案。
  • 六. 工作流程

  • 连接阶段:Slave与Master建立连接。
  • 同步阶段:Master复制数据到Slave。
  • 命令传播:确保两节点完全一致。
  • 七. 常见问题

    • 权限问题、数据不一致、连接持续等需注意。

    通过以上方案,优化后的系统可以实现高可用性和稳定的性能,符合互联网“三高”架构的需求。

    转载地址:http://jsakk.baihongyu.com/

    你可能感兴趣的文章
    Mysql:SQL性能分析
    查看>>
    mysql:SQL按时间查询方法总结
    查看>>
    MySQL:什么样的字段适合加索引?什么样的字段不适合加索引
    查看>>
    MySQL:判断逗号分隔的字符串中是否包含某个字符串
    查看>>
    MySQL:某个ip连接mysql失败次数过多,导致ip锁定
    查看>>
    MySQL:索引失效场景总结
    查看>>
    Mysql:避免重复的插入数据方法汇总
    查看>>
    MyS中的IF
    查看>>
    M_Map工具箱简介及地理图形绘制
    查看>>
    m_Orchestrate learning system---二十二、html代码如何变的容易
    查看>>
    M×N 形状 numpy.ndarray 的滑动窗口
    查看>>
    m个苹果放入n个盘子问题
    查看>>
    n = 3 , while n , continue
    查看>>
    n 叉树后序遍历转换为链表问题的深入探讨
    查看>>
    N!
    查看>>
    N-Gram的基本原理
    查看>>
    n1 c语言程序,全国青少年软件编程等级考试C语言经典程序题10道七
    查看>>
    Nacos Client常用配置
    查看>>
    nacos config
    查看>>
    Nacos Config--服务配置
    查看>>