美文网首页
数据库缓存一致性方案

数据库缓存一致性方案

作者: 乌木山 | 来源:发表于2019-12-16 23:42 被阅读0次

    在互联网架构中,面对高流量的业务场景,数据库+缓存是一个经常被使用的组合策略。而在使用数据库+缓存的业务场景中,数据库缓存数据一致性无疑是最重要的一个点。
    接下我们将分析一些不同的缓存策略,以及各方案的优缺点。业务场景主要基于数据读取数据更新两大场景。

    cache aside

    在cache aside模式下,是由Application层去做缓存数据的刷新操作。
    在数据更新场景下,也可以选择在更新完数据库后,直接删除缓存。然后在下次读取时,按照数据查询场景去加载缓存。


    image.png

    read through / write through

    在cache aside模式下,我们Application需要同时去处理数据库逻辑和缓存逻辑。
    Read/Write through模式下,Application只和cache交互,由cache自己去处理从数据库加载数据、更新数据库工作。

    image.png

    write back(write behind)

    write back和write through运行模式一致,但是数据库更新操作采用的是异步模式,因此可以极大的提高写数据的效率。但是带来的问题是数据更新不能及时的更新到数据库,另外cache也需要记录数据更新历史并进行异步刷新数据库,带来了编程的复杂性。

    常见问题及解决方案

    主从延迟

    TODO

    缓存穿透

    TODO

    参考资料

    https://blog.bluzelle.com/things-you-should-know-about-database-caching-2e8451656c2d
    https://vladmihalcea.com/a-beginners-guide-to-cache-synchronization-strategies/
    https://codeahoy.com/2017/08/11/caching-strategies-and-how-to-choose-the-right-one/
    https://coolshell.cn/articles/17416.html

    相关文章

      网友评论

          本文标题:数据库缓存一致性方案

          本文链接:https://www.haomeiwen.com/subject/beyknctx.html