首页 > 代码库 > 浅谈CDN加速问题
浅谈CDN加速问题
(以百度CDN进行分析)
婆说婆有理,公说公有理。是否使用CDN,不同的工程师有不同的意见。
这里呢我来进行一下简单的分析。
【正方观点】
1、 提升网站加载速度:CDN通过缓存技术提升网站打开速度,便于蜘蛛快速抓取和爬行
2、 提升网站安全性:隐藏真实网站ip,防御针对服务器IP的攻击和各种探测扫描,避免被黑
3、 提升网站稳定性:CDN的ip遍布全国,如果出现局部地区网络问题,不会影响搜索引擎抓取
4、 提升网站用户体验:CDN提升用户的打开体验,对提升排名也有一定的作用
【反方观点】
1、抓取数据下降:CDN ip的多样性,部分ip可能对蜘蛛并不友好;
2、缓存导致数据陈旧:CDN的缓存特性,导致部分地区可能内容更新不同步;
3、服务商优劣参杂:因为服务商的实力不同,可能会导致CDN系统不稳定,反而产生负面影响
4、本地网站无需CDN:部分网站只服务本地,只要机房也在本地,无需使用CDN;
综合双方观点来看,大家的争议点主要集中在CDN的多ip入口和缓存机制会不会对搜索引擎抓取、网站排名产生不利影响。
从 搜索抓取机制上讲:Baiduspider对站点的抓取方式和普通用户访问一样,只要普通用户能访问到的内容,我们就能抓取到。不管是用什么技术,只要能 保证用户能流畅的访问网站,对搜索引擎就没有影响。而缓存技术提升了打开速度和用户体验,这也是百度搜索引擎一直所倡导的,那么为什么还是有一些网站使用 CDN后产生了负面影响。
我们对百度工程师进行了相关咨询,主要有两方面的因素:
一是部分CDN服务商硬件投入不够,经常出现不稳定情况,导致蜘蛛返回大量503内容,导致了抓取量的下降,有的甚至影响了索引量的影响;所以选择有实力的CDN服务商很重要!
二是缓存机制在网站出现死链、无法打开、被黑等情况的时候起到了推波助澜的作用。短时间内产生了一些不利快照,影响了排名。但是这种情况不用担心,及时清理源文件和CDN缓存,并在站长平台提交相关死链数据等方法进行挽回,是可以恢复到原来的情况的!
参考资料:以下内容由百度开放云提供
网站要不要用CDN?
画了一张朴(很)素(low)的图帮助大家来了解业务是否适合使用CDN
以静态请求来说,流量命中率越高的业务越适合用CDN,这时成本越低,加速效果越好
以动态请求来说,一般不适合用CDN,经过CDN会增加链路的时间开销。除非CDN有动态加速功能保证CDN的链路选择最优。这种情况下选择使用动态加速功能,带来的好处是源站只需要单线部署,由CDN实现更复杂网络的接入。
注:流量命中率=(((CDN出流量-发生回源的出流量)/CDN出流量)*100)%
画了一张朴(很)素(low)的图帮助大家来了解什么是流量命中率,这是CDN非常重要的一个指标,流量命中率越高意味着加速效果越好,花的钱越少
也许这时候你会问我的内容是静态的也很hot,那我是否就一定要用CDN了呢。答案是不一定。还有一个至关重要的因素是成本。CDN的成本降低是在最大化保证用户体验的情况下成本最优(好拗口)
简言之对于一些对成本非常敏感,不追求极致的用户体验的公司,CDN未必是一个好的选择。
举 个栗子,一个小型的创业游戏公司使用CDN的主要场景的是游戏下载,由于处于创业阶段,对成本非常敏感,同时认为在当前阶段下可以牺牲用户体验,他们最终 并没有选择使用CDN,而是直接购买了1Gbps的带宽并进行限速,这样的选择是他们的成本从每月12万元左右降低到5万元左右。但是CTO也坦言这是特 殊阶段不得不做出牺牲用户体验的选择,后面仍然会考虑使用CDN。
结论:如果您要保证网站访问体验最优化,网站访问很热的静态内容是非常适合使用CDN的。
1. 提升访问速度
使用CDN后全国的访问速度-平均传输速度5.76MB/s
2. 降低带宽成本
前面提到,在保证访问效果最优的情况下,使用CDN降最大程度的降低带宽成本和人力维护成本
3. 减轻源站压力
使用CDN以后,一个带宽峰值100Gbps左右的大型站点基本只需要维护带宽峰值在1~2Gbps左右的源站即可。
4. 隐藏源站,增强源站抗攻击能力
由于CDN隐藏了源站的真实IP以及CDN天然的抗攻击能力,使用CDN后,源站的安全性会大幅提升
浅谈CDN加速问题