我正在试图找出使用CDN与在本地托管图像的有效性。假设我们的负载是这样的,即与使用CDN相比,从托管HTML内容的同一服务器提供图像或javascript文件的速度会慢一些,地点在什么时候生效?
我对CDN如何工作的理解是,一个请求进入该文件的主CDN站点。此站点仅路由请求,因此它会向另一个Web服务器发出重定向(理论上)更接近发出请求的用户。
然而,与一个遭受更大延迟的请求相比,2个HTTP请求和2个连接的开销实际上可能增加开销。
我的问题是,是否有人有任何关于文件大小减少延迟会产生重大影响的数字或文章,并且使其成为切换到CDN的明显选择?
答案 0 :(得分:3)
基于雅虎的YSlow工具以及我所做的任何测试,在主机上分割图像,CSS和JavaScript是一个好主意,可以提高速度。
此外,如果您可以管理它,从不提供cookie的域提供静态内容也会增加速度。
来自YSlow的Yahoo开发人员帮助部分: http://developer.yahoo.com/performance/rules.html#cdn
“请记住,最终用户响应时间的80-90%用于下载所有内容 页面中的组件:图像,样式表,脚本,Flash等。这就是 表现黄金法则。而不是从重新设计的艰巨任务开始 在您的应用程序架构中,最好首先分散您的静态内容。这个 不仅可以大大缩短响应时间,而且更容易归功于 内容传递网络。“
答案 1 :(得分:1)
'地方在什么时候生效?'这在很大程度上取决于您的流量模式。可能是您在X国主办,而您的大多数客户也在那里。 CDN可能不是正确答案 - 您可能需要在应用程序前面使用强大的缓存层。
CDN可以提供国内优势,例如更好的连接处理,减少到源的连接/请求/带宽,TCP优化,DDoS保护,以及缓存(原始问题中未提及)。但这一切都取决于你愿意付出的代价......
您的客户越远,CDN带来的好处就越明显。无论文件是小还是大,这都是一样的。
尝试使用付费的真实世界测试,看看会发生什么。