美文网首页
Redis 缓存优点、缺点、使用场景

Redis 缓存优点、缺点、使用场景

作者: 滨岩 | 来源:发表于2020-01-19 13:13 被阅读0次

    缓存的收益

    1、加速读写

    通过缓存加速读写速度:CPU L1/L2/L3 Cache 、Linux page Cache 加速硬盘读写

    、浏览器缓存、Ehcache缓存数据库结果。

    2、降低后端负载

    后端服务器通过前端缓存降低负载:业务端使用Redis降低后端MySQL负载等

    缓存的成本

    1、数据不一致:缓存层和数据层有时间窗口不一致,和更新策略有关

    2、代码维护成本:多了一层缓存逻辑

    3、运维成本:例如Redis Cluster

    使用场景

    1、降低后端负载:

    对高消耗的SQL:join结果集/分组统计结果缓存。

    比如要统计一个TP10排行榜,这个排行榜会设计到很复杂,很耗性能的SQL语句。

    如果我们不用缓存,那么每一次请求都要去计算,请求量大的时候就会增加服务器负担,这样做很多时候都是没有意义的,我们只要在某个时间点,计算一次放在缓存里即可,

    我们可以第一次或者预先算好放到Redis缓存中,下一次请求直接去访问缓存就好了。

    2、加速响应请求

    利用Redis/Memcache优化IO响应时间。

    Redis是将数据源放在内存中的,这是它天然的优势,减少磁盘IO。假如我们介入了BI,我们可以将BI的结果放在Redis里面,每一次请求都是请求Redis,减轻BI服务器压力

    3、大量写合并为批量写

    如计数器先Redis累加,再批量写到DB。比如:如果实现一个点赞计数器,每次先Redis incr到内存,incr数据非常的快,然后再批量update mysql中,否则每次update到数据库,对于数据库来说

    update 或者insert 对于数据库来说,本来就是比较慢的

    相关文章

      网友评论

          本文标题:Redis 缓存优点、缺点、使用场景

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