美文网首页
CDN、Cache(缓存)、Buffer(缓冲)

CDN、Cache(缓存)、Buffer(缓冲)

作者: c80bc26f12ed | 来源:发表于2017-10-12 15:15 被阅读212次
    缓存_百度百科  https://baike.baidu.com/item/%E7%BC%93%E5%AD%98
    缓冲器_百度百科  https://baike.baidu.com/item/%E7%BC%93%E5%86%B2%E5%99%A8/3697522?fr=aladdin&fromid=1693133&fromtitle=buffer
    CACHE、CDN、IDChttps://wenku.baidu.com/view/8b73628caef8941ea76e05ef.html
    从HTTP响应头看各家CDN缓存技术 https://segmentfault.com/a/1190000006673084
    CDN缓存那些事-腾讯云官方论坛  http://bbs.qcloud.com/thread-3775-1-1.html
    CDN_百度百科  https://baike.baidu.com/item/CDN/420951?fr=aladdin
    

    Cache叫做缓存而Buffer叫做缓冲。
    在硬件概念中,Cache的用途是连接两种速度不同的设备,比如寄存器和内存、CPU和PCI-Bus、IDE总线和硬盘。
    Buffer的原意是类似弹簧的一种缓冲器,用来减轻或吸收冲击的震动的东西。Buffer是一种数据预存取的方式,它用于临时存储数据并以与接收速度不同的速度传输。Buffer的更新方式可以是按时间间隔自动刷新,
    而Cache则更讲究“命中率”,将当前时间段使用频繁的少量数据放到高速设备中方便读写。在程序开发中,固然没有什么高速、低速设备,不过数据源是可以有不同读写效率的。对于少量数据,文本文件的读写通常就要比数据库存取效率好,而同样是文本文件读写,在tmpfs上的效率就要比直接的磁盘IO效率好。
    Buffer更多地体现在进程通信和队列上,很多时候并不是因为接收方没有能力更快地读取,而是没有必要更快地读取。

    通常人们所说的Cache就是指缓存SRAM。 SRAM叫静态内存,“静态”指的是当我们将一笔数据写入SRAM后,除非重新写入新数据或关闭电源,否则写入的数据保持不变。
    由于CPU的速度比内存和硬盘的速度要快得多,所以在存取数据时会使CPU等待,影响计算机的速度。SRAM的存取速度比其它内存和硬盘都要快,所以它被用作电脑的高速缓存(Cache)。
    有了高速缓存,可以先把数据预写到其中,需要时直接从它读出,这就缩短了CPU的等待时间。高速缓存之所以能提高系统的速度是基于一种统计规律,主板上的控制系统会自动统计内存中哪些数据会被频繁的使用,就把这些数据存在高速缓存中,CPU要访问这些数据时,就会先到Cache中去找,从而提高整体的运行速度。一般说来,256K的高速缓存能使整机速度平均提高10%左右
    Buffer从英文直译过来的意思是“缓冲区”,这里我们将它称为缓冲,因为它不仅是个名词,还是个动词。
    缓冲区是存储一系列的数据的地方,客户端所获得的数据可以从程序的执行结果直接输出,也可以从缓冲区输出。但是这两种方式在速度上是有差异的:在web中,当一个asp程序被请求的次数不多时,二者基本上没有什么差异,至少我们感觉不出来。但是当有很多人请求一个asp程序时,速度可就不一样了。如果没有缓冲区,那么每个请求asp程序的人的客户端所得到的结果都是asp程序执行一次所得到的结果,而如果预先将asp程序缓冲,那么每个客户端所得到的结果就是缓冲区的结果,不是执行一次程序的结果。比如有1000个用户同时访问一个asp页面,如果这个asp程序没有缓冲,那么程序将被执行一千次,这样服务器的负荷就回加大,从而导致客户端打开页面速度变慢;如果这个asp程序被缓冲了,那么结果就不一样了,每个客户端直接从缓冲区获得数据,服务器将不会因为访问增加而增加程序执行次数,因此客户端打开页面的速度也就比上一种情况要快。这就是Buffer的好处。

    智能Cache和CDN都是流量本地化方案。区别在于:
    1、Cache是基于IP劫持的方式重定向;CDN是基于DNS劫持重定向。
    2、Cache是通过用户点击率确定是否缓存该资源(有利于本地化资源的有效缓存,比如方言剧等);CDN是通过第三方统计数据的支持(热点资源访问频率排名)的或者操作员人为指定缓存对象。
    3、Cache除了支持HTTP下载、WEB视频等还支持P2P视频下载或与签约视频网站的在线观看,对网页缓存支持不够;CDN对网页的支持好;
    4、Cache系统部署需要建立分光平台;CDN部署需要DNS更改;
    5、CDN含正向代理方式;
    6、Cache是旁路部署,部署或系统故障不影响原网络的使用。
    7、Cache投资低,地市运营商可自主部署;CDN投资大,需省公司和集团公司同一规划。

    相关文章

      网友评论

          本文标题:CDN、Cache(缓存)、Buffer(缓冲)

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