美文网首页
03 | 缓存可以用来解决哪些问题

03 | 缓存可以用来解决哪些问题

作者: 乌鲁木齐001号程序员 | 来源:发表于2020-07-25 11:00 被阅读0次

    缓存

    • 最通用的解释就是可以进行高速数据交换的存储器;

    缓存与内存的区别

      缓存 内存
    掉电是否丢数据
    物理结构是否相同 部分内存、缓存框架(软件,比如 Guava、Redis) 一般为物理内存条
    部署方式 所在主机、独立部署 所在主机

    缓存的几种淘汰策略

    FIFO | 先进先出
    • 如果一个数据最先进入缓存, 则应该最早被淘汰;
    LRU | 最不经常使用
    • 缓存的内容都在一个数轴上(时间轴),最左边的缓存淘汰;
    LFU | 最近最少使用
    • 横轴是缓存,纵轴是缓存在一段时间的使用量,纵轴上的值最短的缓存淘汰;

    缓存使用的前提

    • 应用扛不住用户并发量的时候;

    缓存的应用场景

    • 将数据库的部分数据加入缓存;
    • 列表排序分页等场景下,在缓存中完成;
    • 并发情况下的计数器;
    • 详情内容数据放在缓存;
    • 分布式的 session;
    • 热点数据排名,最热的数据放在前面,不热的数据放在后面,然后不断的更新这个排名;
    • 发布订阅:一般 MQ 做这个事情,但是有的缓存框架(Redis)也可以做这个事情;
    • 分布式锁:可以使用数据库、zookeeper、consul、etcd、redis 来做分布式锁;

    相关文章

      网友评论

          本文标题:03 | 缓存可以用来解决哪些问题

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