使用Amazon CloudFront为网站提供CDN加速

内容分发网络Content delivery networkContent distribution network,常简写成CDN)是指将同样文件的多个版本复制到位于不同区域的CDN服务器上,当需要读取这些文件时,自动选择离自已最近的CDN服务器,来达到最低的延时与最快的速度。(详见:wikipedia:CDN)

一般而言CDN价格不菲,而且大多针对大流量的应用,但Amazon CloudFront提供了按需付费的CDN服务,在美洲、欧洲、日本及香港都有CDN服务器,只需要支付所使用的请求数与流量数,没有最低消费要求,具体收费标准可以参考这里

开始使用CloudFront之前需要有Amazon帐号并在Amazon S3上创建用于存储CDN源内容的Bucket,步骤可参考《使用Amazon S3云存储自动备份服务器文件》中的对应内容或Amazon网站上的帮助文档。在创建完以后注册使用ColudFront并创建Distribution,指定所使用的Buckets,并可选择使用CNAME。这样,在所选择的Bucket中的内容就会自动同步到各区域的CDN服务器上了。

对于使用wordpress的网站而言,最简单的使用CloudFront的方法大概就是通过W3 Total Cache。安装完这个插件后在General Settings里Content Delivery Network中开通CDN并选择Amazon CloudFront,然后在CDN设置页内输入Access key ID,Secret key:Bucket,ColudFront以及CNAME地址,测试成功后就可以选择需要加速的内容并上传需要加速的文件了,可通过插件设置内的按钮进行自动上传,但有时会发生少数文件未上传的情况,也可自已手动上传。值得注意的是,上传后的文件的Permission设置中,需要设置Everyone有Open/Download的权限,否则无法通过CDN读取。

在设置完以后,所有指向被加速文件的链接都被自动指向CloudFront的Distribution地址或者CNAME上,这样设置就完成了。

在实际使用中,发现在使用CloudFront后加速效果非常明显,一些资源所在CDN服务器的ping值只有20+ms,这对于主机在美国的网站来说还是很有用的,对于小网站来说,费用比较有限,而对于大型网站来说,还得考虑这部分的经费有没有超出预算,根据预算来调整哪些内容需要加速,这就需要在费用及速度中进行折衷了。

觉得文章不错?请通过RSS订阅本博客文章。

你可能还喜欢如下文章

4 Comments

  1. 诗词名句 说:
    TheWorld BrowserWindows XP

    试过CDN用得不好速度更慢

    Feng Jun 回复:

    我这效果相对不错。

  2. katylong 说:
    Internet Explorer 8.0Windows 7

    我用过亚马逊的CDN,在港台地区效果不好啊。因为他的所有节点都在美国西雅图。和没有做CDN是一样的。

    Feng Jun 回复:

    查了下cloudfront的FAQ,有个节点的列表,三个在亚洲,四个在欧洲,九个在美洲
    http://aws.amazon.com/cloudfront/#details

Leave a Reply