缓存与db一致性问题

缓存和数据库架构:

主流方案:用数据service屏蔽缓存和db,读写都走service

非主流方案:异步缓存更新,通过binlog

一缓存与db一致性问题

    原则:先淘汰缓存,再修改db。如果使用更新缓存在修改DB的方案不会出现下列问题

    缓存+主库:

    缓存+主从:双淘汰法(同步,异步timer,binlog分析)

二db主从一致性问题

   不一致原因,主从同步有延迟。

   解决4种方案:

   1半同步复制,等到从库写完,主库再返回,利用数据库原生功能实现。缺点:主库写请求时延增加,吞吐量降低

   2 强制读主库:缺点丛库只用作冗余了,没发挥读写分离优势,智能通过cache来提升性能

   3 数据库中间件:所有读写都走数据库中间件,中间件记录到写库的key,在时间窗口里面读请求路由到主库,主从完成后,路由到丛库

   4 缓存记录key:用一个缓存记录写请求的key,缓存过期时间为时间窗口长度,读请求时先看缓存有没有key,有读主库,无读丛库

                             

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值