你可能会问:“我们是否也可以使用分布式缓存来解决这个问题呢?”答案是否定的。一般 来说,图片和视频的大小会在几兆到几百兆之间不等,如果我们的应用服务器和分布式缓存 都部署在北京的机房里,这时一个杭州的用户要访问缓存中的一个视频,那这个视频文件就 需要从北京传输到杭州,期间会经过多个公网骨干网络,延迟很高,会让用户感觉视频打开 很慢,严重影响到用户的使用体验。 所以,静态资源访问的关键点是就近访问,即北京用户访问北京的数据,杭州用户访问杭州 的数据,这样才可以达到性能的最优。你可能会说:“那我们在杭州也自建一个机房,让用 户访问杭州机房的数据就好了呀。”可用户遍布在全国各地,有些应用可能还有国外的用户, 我们不可能在每个地域都自建机房,这样成本太高了。 另外,单个视频和图片等静态资源很大,并且访问量又极高,如果使用业务服务器和分布式 缓存来承担这些流量,无论是对于内网还是外网的带宽都会是很大的考验。 所以我们考虑在业务服务器的上层,增加一层特殊的缓存,用来承担绝大部分对于静态资源 的访问,这一层特殊缓存的节点需要遍布在全国各地,这样可以让用户选择最近的节点访 问。缓存的命中率也需要一定的保证,尽量减少访问资源存储源站的请求数量(回源请 求)。 TG:@cdncloudlisiwen
QQ:2832254781
|