缓存简介
  KRsXEGSB49bk 2023年11月02日 24 0

1. 什么是缓存?

可以进行高速数据交换的存储器.

2. 缓存种类:

  • web端 => 页面缓存
  • 移动端 => App缓存
  • 服务端 => 数据库缓存、平台级缓存、应用缓存

2.1 系统级缓存:

(1). 机械硬盘缓存(两部分):

  • DDR2缓存:减少硬盘与内存之间做数据交换.
  • 闪存.

(2). CPU缓存:

  • CPU与内存的一个临时数据交换器: a. 比内存小.交换速度非常快. b. 数字越小越靠近CPU核心,速度也越快,L1是最靠近CPU的. c. CPU查找顺序:L1 -> L2 -> L3 -> 主存.
  • L1缓存又分为: a. 数据缓存(L1d Cache) b. 指令缓存(L1i Cache)
(3). 缓存与内存的区别:
```js
                   缓存                                内存
掉电是否丢数据       丢                                  丢                    // 因为存储方式是一样的
物理结构是否相同     部分内存(部分内存复制数据)、缓存框架      一般为物理内存条
部署方式            所在主机、独立部署                     所在主机

2.2 应用级缓存:

将数据存储到redis中.用户直接访问redis数据.减少与硬盘的交互.

3. 缓存应用场景?

(1). 什么时候用? 应用的前提是应用抗不住用户的并发量的时候使用.

(2). 场景:

  • 将DB的数据加入到缓存
  • 列表排序分页等
  • 计数器:并发计数、访问计数
  • 详情内容数据缓存
  • 分布式session: 用户权限session共享
  • 热点数据排名: 评价系统、积分排名系统
  • 发布订阅
  • 分布式锁: 数据库、zookeeper、consul、etcd、redis

4. 容量的限制 - 淘汰机制策略:

保证缓存空间不被占满.

  • 先进先出算法(FIFO): 如果一个数据最先进入缓存,则应该最早淘汰掉.
  • 最不经常使用(LRU): 判断数据最近使用的时间,时间最远的数据优先被淘汰.
  • 最近最少用(LFU): 在一段时间内,数据被使用的次数最少,优先被淘汰.
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  xaeiTka4h8LY   2024年05月31日   33   0   0 Dockerredis
  xaeiTka4h8LY   2024年05月31日   48   0   0 nosqlredis
  xaeiTka4h8LY   2024年04月26日   55   0   0 yumredis
  xaeiTka4h8LY   2024年04月26日   51   0   0 centoslinuxredis
KRsXEGSB49bk
作者其他文章 更多

2023-12-19

2023-12-11

2023-12-10

2023-12-10

2023-12-08

2023-12-07

2023-12-05

2023-12-04

ts

2023-11-30