CDN的全称是Content Delivery Network,即内容分发网络。其目的是通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络“边缘”,使用户可以就 近取得所需的内容,提高用户访问网站的响应速度。CDN有别于镜像,因为它比镜像更智能,或者可以做这样一个比喻:CDN=更智能的镜像+缓存+流量导流。因而,CDN可以明显提高Internet网络中信息流动的效率。从技术上全面解决由于网络带宽小、用户访问量大、网点分布不均等问题,提高用户访问网站的响应速度。
Amazon CloudFront与MaxCDN是国外最出名的两个CDN服务(此外还有Rackspace,GoGrid CDN,Simple CDN, Akamai CDN等)。不过这些都是收费的,大致在1TB/100$左右这个量级。
免费的CDN有CloudFlare.com, WebLuker, coralcdn等。
只看楼主,一览无余
如果您喜欢这篇文章,请访问盛夏莲花博客以获取最新内容更新及评论,以及更好的阅读体验。
CloudFlare的设置非常简单,但要求用户更改dns服务器的设置。有人认为这样会影响到SEO,不太了解这种说法的原因。CloudFlare除了为你的网站加速外,还提供报表和app服务。通过报表可以看到一些简单的数据,比如cloudflare为你的网站代理了多少次请求,共省下多少带宽,有多少访问是来自于搜索引擎。此外,它还提供几个级别的安全访问,不过工作原理还不太了解。在我使用的免费级的服务中,尽管有时从报表中可以看到cloudflare拦截了一些来自于有威胁的IP的访问,但没有更进一步地说明。
CloudFlare只提供对HTTP的代理,但支持GET,POST(其它协议如delete,put未测试)。它还提供了直接访问(通过direct.yourdomainname),以及开发模式(另一种直接访问)。如果cache有问题,它也提供了清除cache的方式。
CoralCDN据称是peer-to-peer的CDN,估计这也是它能维持免费的原因之一。但使用中觉得它性能一般。使用coralCDN需要将你的domain name附加在它的域名上,成为其一个子域名再进行访问。比如你的域名为www.example.com,则通过www.example.com.nyud.net来访问www.example.com时,就可以获得coralCDN的加速。由于这种方式更改了域名,所以对SEO很不友好。所以CoralCDN的实际作用十分值得怀疑。
如果想试一下CoralCDN,应该这样配置你的网站,当你的网站处理一个http request的时候,检查它是否来自于coralCDN,如果是,则直接处理请求,生成页面。如果不是,则将其永久重定向(以www.example.com为例,则是将其永久重定向到www.example.com.nyud.net)。由于客户端会缓存这个DNS记录,所以这个重定向倒也不会太花时间。
CoralCDN的另一个可能的用途是来做代理服务器来访问某些网站。不过,有些网站,如www.facebook.com,仍然无法访问。
WebLuker是国内的免费CDN ,其优势在于不会被封,从国内访问速度很快。缺点是申请时有审核机制,时间很长。从国外访问则很慢。