zoukankan      html  css  js  c++  java
  • 面试题:redis主从数据库不一致如何解决?

    主从数据库不一致如何解决?

    场景描述,对于主从库,读写分离,如果主从库更新同步有时差,就会导致主从库数据的不一致。
    1、忽略这个数据不一致,在数据一致性要求不高的业务下,未必需要时时一致性。
    2、强制读主库,使用一个高可用的主库,数据库读写都在主库,添加一个缓存,提升数据读取的性能。
    3、选择性读主库,添加一个缓存,用来记录必须读主库的数据,将哪个库,哪个表,哪个主键,作为缓存的key,设置缓存失效的时间为主从库同步的时间,如果缓存当中有这个数据,直接读取主库,如果缓存当中没有这个主键,就到对应的从库中读取。

    问题原因:

    网络信息不同步,数据发送有延迟

    根本上解决:

    1. 优化主从间的网络环境,通常放置在同一个机房部署,如使用阿里云等云服务器时要注意此现象
    2. 监控主从节点延迟(通过offset)判断,如果slave延迟过大,暂时屏蔽程序对该slave的数据访问
  • 相关阅读:
    HDU 1423
    POJ 3264
    POJ 3177
    CodeForces 81A
    SPOJ RATING
    ZOJ 2588
    POJ 1523
    POJ 3667
    递归
    数据结构
  • 原文地址:https://www.cnblogs.com/dalianpai/p/14273403.html
Copyright © 2011-2022 走看看