CDN缓存是指在一定时间内按一定规则保存在某一物理设备或节点上的内容,缓存的内容可能是文档、照片、视频及其他文件等。
CDN实现缓存功能的服务器通常就叫缓存服务器,通常CDN缓存功能模块与CDN流媒体服务器合设。当用户首次向缓存服务器发起访问请求时,由于缓存服务器的内容未命中,则需要向上级服务器发起内容请求拉取内容,为用户提供“边拉边放”的服务。缓存服务器根据一定的缓存算法,决定对下载下来的文件进行保存或删除。由于缓存服务器离用户很近,所以响应速度快,能够节省传输成本,并且减少了源站服务器的压力。
虽然CDN边缘节点缓存策略因服务商不同而不同,但一般都会遵循http标准协议,通过http响应头中的Cache-control: max-age的字段来设置CDN边缘节点数据缓存时间。当客户端向CDN节点请求数据时,CDN节点会判断缓存数据是否过期,若缓存数据并没有过期,则直接将缓存数据返回给客户端;否则,CDN节点就会向源站发出回源请求,从源站拉取最新数据,更新本地缓存,并将最新数据返回给客户端。
CDN服务商一般会提供基于文件后缀、目录多个维度来指定CDN缓存时间,为用户提供更精细化的缓存管理。CDN缓存时间会对“回源率”产生直接的影响。若CDN缓存时间较短,CDN边缘节点上的数据会经常失效,导致频繁回源,增加了源站的负载,同时也增大的访问延时;若CDN缓存时间太长,会带来数据更新时间慢的问题。开发者需要增对特定的业务,来做特定的数据缓存时间管理。
版权声明:本文章文字内容来自第三方投稿,版权归原始作者所有。本网站不拥有其版权,也不承担文字内容、信息或资料带来的版权归属问题或争议。如有侵权,请联系contentedit@huawei.com,本网站有权在核实确属侵权后,予以删除文章。