首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CDN如何处理缓存的资源?

CDN如何处理缓存的资源?
EN

Stack Overflow用户
提问于 2013-07-18 22:20:14
回答 1查看 97关注 0票数 0

我将共享主机与CDN Cloudflare结合使用。而且,我的网站肯定比以前使用CDN更快了。然而,我想更好地了解CDN和我的托管服务是如何交互的。例如,假设我在网页上有一个图像,以及一个外部javascript文件。我知道CDN会“缓存”这些资源。但是,这是不是意味着CDN不是从我的共享主机传输图像/javascript(这将花费我每月传输的字节数),而是实质上给我“免费”传输这些资源?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-22 13:49:59

是的,如果您的CDN服务提供商不收取任何数据传输费(例如免费级别的CloudFlare),那么您是对的。

基本上,发生的事情是用户向您网站中的资产发出请求,如果该项目已经缓存在您的CDN提供商的边缘节点中,则该项目将由他们提供服务。只有当资产不可从缓存中获得或过期时,您的服务器才会获得命中。

但这种免费是有代价的,没有免费的饭,想象一下,如果只是让每个人都有一顿免费的饭,CloudFlare是如何生存的。

大部分免费服务没有性能保障,缓存命中率可能不会一直很高,CDN提供商可能只会分配有限的内存来存储免费客户的缓存,因此您的资产在缓存中不可用的概率相对较高。

更糟糕的是,如果内容在缓存中不可用,那么您的CDN提供商将需要将文件提取到源站。现在,最终用户对您的网页的直接请求变成了两个间接请求,这显然会增加加载时间。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17726113

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档