许多大型网站(Facebook等)都在为其内容设置CDN。现在我注意到,这些CDN并不总是在原始域名上。
示例:Facebook图片位于“photos-a.ak.fbcdn.net”
为什么?在“主要”域(facebook.com)
上没有大量子域名是否有性能提升答案 0 :(得分:2)
用户获得了相当大的性能提升,因为使用不同的域名,浏览器将不再需要发送cookie。
阅读本文,了解有关无Cookie域名的更多信息:http://code.google.com/speed/page-speed/docs/request.html#ServeFromCookielessDomain
答案 1 :(得分:2)
Stackoverflow本身在its static content site.
上表现得非常好当浏览器发出请求时 静态图像并发送cookie 连同请求,服务器 没有任何用处 饼干。所以他们只创建网络 没有充分理由的交通。你应该 确保静态组件 请求无cookie请求。 创建一个子域并托管所有子域 那里的静态组件。
如果您的域名是www.example.org,则可以托管您的静态组件 static.example.org。但是,如果你已经 已经在顶级设置了cookie 域example.org而不是 www.example.org,然后是所有请求 到static.example.org将包括 那些饼干。在这种情况下,你可以 购买一个全新的域名,托管你的 静态组件,并保持这一点 域无cookie。雅虎使用 yimg.com,YouTube使用ytimg.com, 亚马逊使用images-amazon.com等 上。
在无cookie域上托管静态组件的另一个好处是某些代理可能会拒绝 缓存那些组件 要求提供cookies。在一个相关的 请注意,如果您想知道是否应该使用 example.org或www.example.org for 你的主页,考虑一下cookie 影响。省略www让你没有 选择,但写饼干 * .example.org,因为性能原因,最好使用www 子域名并将cookie写入 那个子域。
最初来自Yahoo.
答案 2 :(得分:0)
CDN通常分布在世界各地,以便用户比所有文件都在主数据中心时更接近文件。
将单个域路由到不同的数据中心很困难(不可能?)。
此外,不再需要发送cookie。对于Facebook而言,由于嵌入了整个网络而拥有吨的Cookie,这可以大大节省。