缓存原理

缓存用于协调不同组件间数据传输速度的差异,例如CPU与内存。其工作原理基于程序执行的局域性行为,通过暂存最近访问的数据、指令预测和预取技术提高效率。缓存主要分为本地缓存、分布式缓存、反向代理和CDN,回收和更新策略是管理缓存的重要方面。
摘要由CSDN通过智能技术生成

(一)缓存的意义

        缓存最早是为了解决CPU运算速度和内存读写速度不匹配的矛盾。如今我们把能协调两种数据传输速度/处理速度有差异的组件的结构都称之为缓存。除了CPU和内存以外,内存和硬盘之间,硬盘与网络之间,都可以通过引入缓存来协调两种数据传输/处理速度有差异的组件。

        以CPU和主内存之间的Cache为例,当CPU处理数据时,它会先到Cache中去寻找,如果数据因之前的操作已经读取而被暂存其中,就不需要再从随机存取存储器(Random Access Memory)中读取数据。由于CPU的运行速度一般比主内存的读取速度快,主存储器周期(访问主存储器所需要的时间)为数个时钟周期。因此若要访问主内存的话,就必须等待数个CPU周期从而造成浪费。

        提供“缓存”的目的是为了让数据访问的速度适应CPU的处理速度,其基于的原理是内存中“程序执行与数据访问的局域性行为”,即一定程序执行时间和空间内,被访问的代码集中于一部分。为了充分发挥缓存的作用,不仅依靠“暂存刚刚访问过的数据”,还要使用硬件实现的指令预测数据预取技术——尽可能把将要使用的数据预先从内存中取到缓存里。

ff7591cfd524b6cc90fef58b2932421d9d0.jpg

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值