使用内容交付networking(CDN)的优点和缺点是什么?

我正在通过Yahoo的开发人员网站来加速您的网站的最佳做法…

  • 使用内容交付networking (CDN)的优点和缺点是什么?

  • 何时使用CDN?

  • CDN是一个性能助推器吗?

使用内容交付networking(CDN)的优点和缺点是什么?

  • 缺点可能是它花钱,而且增加了部署过程的复杂性。

  • 主要优点是内容传递给用户的速度提高了。

何时使用CDN?

  • 当你有一个stream行的公共网站与一些types的静态内容(图像,脚本,CSS等),这将是最有效的。

CDN是一个性能助推器吗?

  • 一般来说,是的。 当用户做出特定请求时,dynamic确定离该用户最近的服务器(就服务器和用户之间的最小节点数量而言)。 这优化了内容传送给该用户的速度。

还有一个要考虑的问题(最近被我们推了):您的客户可能会阻止CDN! 我正在使用Microsoft的CDN for jQuery,去年秋天我们从microsoft.com主机名chnaged到ajax.aspnetcdn.com(以避免在下载jQuery时不需要的cookie)。 从那时起,我们有几个networkingfilter的客户,阻止aspnetcdn.com,并不得不手动白名单。

我们将继续使用CDN,但是它让我们开启了另一个可能导致的问题。

每个CDN提供商都不尽相同,但是您应该仔细研究他们的networking,以及它是如何影响您的目标受众的,尤其是如果您的网站受众在世界某个地区严重本地化。

在我们的testing中,我们发现大多数用户(取决于他们从哪个ISP连接)没有看到任何性能优势,因为我们正在使用的CDN提供商没有与他们的上游提供商配对。 数据包没有沿着“主要pipe道”路由,如果我们继续前进,性能就会下降。

这样说的话,上面的情况可能不是那么常见,但是testing还是个好主意。 使用来自CDN的资源调出您的站点的一个版本,并在不同的语言环境和不同的连接上进行testing并测量结果。

还有其他的好处; 浏览器利用多个域名,同时请求更多,服务器负载更less等。一般来说,CDN是一个不错的select。

如果很多内容来自CDN,CDN就是一个性能提升者。

通常你每次都有两个连接来获取每个域的内容,所以每个项目都是一个连接。

如果您在另一个域的CDN上有内容,则您的网站的连接数将增加,并且您的网站的加载速度也会加快。

我通常使用CDN的JavaScript库,只有当我相信CDN,并检查您要使用的CDN的正常运行时间。