浅谈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加速问题的更多相关文章
- 浅谈CDN、SEO、XSS、CSRF
CDN 什么是CDN 初学Web开发的时候,多多少少都会听过这个名词->CDN. CDN在我没接触之前,它给我的印象是用来优化网络请求的,我第一次用到CDN的时候是在找JS文件时.当时找不到相对 ...
- 浅谈CDN技术的性能与优势
从淘宝架构中的CDN入手分析 使用CDN和反向代理提高网站性能.由于淘宝的服务器不能分布在国内的每个地方,所以不同地区的用户访问需要通过互联路由器经过不同长度的路径来访问服务器,返回路径也一样,所以数 ...
- 浅谈矩阵加速——以时间复杂度为O(log n)的算法实现裴波那契数列第n项及前n之和使用矩阵加速法的优化求法
首先请连矩阵乘法乘法都还没有了解的同学简单看一下这篇博客: https://blog.csdn.net/weixin_44049566/article/details/88945949 首先直接暴力求 ...
- 浅谈 举家搬迁静态文件到CDN
由于七牛CDN最近做活动,对于标准用户可以免费使用如下优惠 10 GB 存储空间 10 G/月 下载流量 10 万次/月 PUT/DELETE 请求 100 万次/月 GET 请求 以上这些指标直接就 ...
- 转:浅谈CSS在前端优化中一些值得注意的关键点
前端优化工作中要考虑的元素多种多样,而合理地使用CSS脚本可以在很大程度上优化页面的加载性能,以下我们就来浅谈CSS在前端优化中一些值得注意的关键点: 当谈到Web的“高性能”时,很多人想到的是页面加 ...
- 【微信小程序项目实践总结】30分钟从陌生到熟悉 web app 、native app、hybrid app比较 30分钟ES6从陌生到熟悉 【原创】浅谈内存泄露 HTML5 五子棋 - JS/Canvas 游戏 meta 详解,html5 meta 标签日常设置 C#中回滚TransactionScope的使用方法和原理
[微信小程序项目实践总结]30分钟从陌生到熟悉 前言 我们之前对小程序做了基本学习: 1. 微信小程序开发07-列表页面怎么做 2. 微信小程序开发06-一个业务页面的完成 3. 微信小程序开发05- ...
- 朱晔的互联网架构实践心得S2E6:浅谈高并发架构设计的16招
朱晔的互联网架构实践心得S2E6:浅谈高并发架构设计的16招 概览 标题中的高并发架构设计是指设计一套比较合适的架构来应对请求.并发量很大的系统,使系统的稳定性.响应时间符合预期并且能在极端的情况下自 ...
- 【初码干货】使用阿里云对Web开发中的资源文件进行CDN加速的深入研究和实践
提示:阅读本文需提前了解的相关知识 1.阿里云(https://www.aliyun.com) 2.阿里云CDN(https://www.aliyun.com/product/cdn) 3.阿里云OS ...
- Signalr系列之虚拟目录详解与应用中的CDN加速实战
目录 对SignalR不了解的人可以直接移步下面的目录 SignalR系列目录 前言 前段时间一直有人问我 在用SignalR 2.0开发客服系统[系列1:实现群发通讯]这篇文章中的"/Si ...
随机推荐
- ELK系列三:Elasticsearch的简单使用和配置文件简介
1.定义模板创建索引: 首先定义好一个模板的例子 { "order":14, "template":"ids-1", "state ...
- State Server实现多机器多站点 Session 共享 全手记
网络环境有2台windows 2008 (192.168.1.71,192.168.1.72) 需要部署成 WebFarm,提高容错性. 网站部署在2台机器上的2个站点,如何才能做到Session的共 ...
- Centos 7网络文件系统nfs服务的安装与配置
实验环境>>>>>>>>> nfs服务端:(nfs-server)192.168.100.2 nfs客户端:(nfs-client)192.168 ...
- Java虚拟机一
Java发展至今,出现了很多Java虚拟机,从最初的Classic的Java虚拟机到Exact VM虚拟机,到现在最终被大规模部署和应用的是Hotspot虚拟机. 整数在Java虚拟机中的 ...
- Hibernate的10个常见面试问题及答案
在Java J2EE方面进行面试时,常被问起的Hibernate面试问题,大多都是针对基于Web的企业级应用开发者的角色的.Hibernate框架在Java界的成功和高度的可接受性使得它成为了Java ...
- openstack 部署(Q版)-----环境准备篇
一.环境准备 系统:centos7 cinder01 内网:192.168.10.51 外网:172.16.1.51 compute01 内网:192.168.10.52 外网:172.16.1. ...
- HDU 6318 - Swaps and Inversions - [离散化+树状数组求逆序数][杭电2018多校赛2]
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=6318 Problem Description Long long ago, there was an ...
- Spring Cloud微服务开发笔记5——Ribbon负载均衡策略规则定制
上一篇文章单独介绍了Ribbon框架的使用,及其如何实现客户端对服务访问的负载均衡,但只是单独从Ribbon框架实现,没有涉及spring cloud.本文着力介绍Ribbon的负载均衡机制,下一篇文 ...
- Java学习之路-Burlap学习
今天我们来学一下Burlap. Burlap是一种基于XML远程调用技术,但与其他基于XML的远程技术(例如SOAP或者XML-RPC)不同,Burlap的消息结构尽可能的简单,不需要额外的外部定义语 ...
- fiddler抓包工具使用
此工具用于抓取302等看不到的包. 设置: 步骤一 步骤二 重启fiddler软件,设置才有效. 设置谷歌浏览器,使浏览器的访问都经过fiddler.(fiddler就成了代理了)设置如下 隐藏图片的 ...