CDN的英文名称是Content Delivery Network,即内容分发网络。其思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的变快、更稳定。通过在网络各处置放节点云服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提升用户访问网站的响应速度。
核心技术
1、内容发布:它借助于建立索引、缓存、流分裂、组播(Multicast)等技术,将内容发布或投递到距离用户最近的远程服务点(POP)处;
2、内容路由:它是整体性的网络负载均衡技术,通过内容路由器中的重定向(DNS)机制,在多个远程POP上均衡用户的请求,以使用户请求得到最近内容源的响应;
3、内容交换:它根据内容的可用性、云服务器的可用性以及用户的背景,在POP的缓存服务器上,利用应用层交换、流分裂、重定向(ICP、WCCP)等技术,智能地平衡负载流量;
4、性能管理:它通过内部和外部监控系统,获取网络部件的状况信息,测量内容发布的端到端性能(如包丢失、延时、平均带宽、启动时间、帧速率等),保证网络处于最佳的运行状态。
关键特性
1、本地Cache加速 提高了企业站点(尤其含有大量图片和静态页面站点)的访问速度,并大大提高以上性质站点的稳定性。
2、镜像服务 消除了不同运营商之间互联的瓶颈造成的影响,实现了跨运营商的网络加速,保证不同网络中的用户都能得到良好的访问质量。
3、远程加速 远程访问用户根据DNS负载均衡技术智能自动选择Cache云服务器,选择最快的Cache云服务器,加快远程访问的速度
4、带宽优化 自动生成云服务器的远程Mirror(镜像)cache云服务器,远程用户访问时从cache云服务器上读取数据,减少远程访问的带宽、分担网络流量、减少原站点WEB服务器负载等功能。
5、集群抗攻击 广泛分布的CDN节点加上节点之间的智能冗余机制,可以有效地预防黑客入侵以及降低各种DDoS攻击对网站的影响,同时保证较好的服务质量 。
下面我们就先说说CDN能给我们带来什么益处?
CDN对网站的好处
对于网站来说CDN的“内容分发”、“内容交换”、“性能管理”关键技术是我们众多草根网站依靠自己是难以实现的,并且还是对我们网站大有益处的。
一、提高网站用户访问体验
这几个核心技术也是最直观的体现在网站的用户体验上的,一个网站最大的桎梏就是用户端的载入时间长短了,这就相当于实体店铺的经营场所是否交通便利与否,也就是俗称的“地利”了。目前PC端宽带、手机端4G网络普及率已经是非常的高了,并且年年都在“提速”。所以,用户端的网络使用习惯之一就是要“快”,网站网站的快慢基本都是取决于网站云服务器的配置性能以及云服务器带宽这两个因素,所以一味的盯着升级云服务器配置和带宽性价比是非常差的。另外我们的国情造成得电信、联通南北割据造成的双线云服务器也是一个影响得因素,这又是一个成本不低的开支,有些不懂的站长甚至用的都不是双线云服务器。所以,CDN的出现给了我们一个性价比很高的解决方案,只需要启用CDN就可以省下云服务器配置、独立带宽、南北双线这三个网站载入速度的难题,就小编自己的折腾体验来说,CDN的速度表现最大的特点就是速度均衡、分摊云服务器资源压力、跨区域和跨运营商体验差距减小等优势。甚至好不夸张的说,有了CDN我们云服务器就算是廉价的虚拟云服务器浏览体验一样可以媲美中高端云服务器的体验。至于说“浏览体验”对网站站的权重提升有多大影响小编就不多说了,看看各个搜索引擎的白皮书就知道了。
二、提高网站的稳定性和安全防护能力
云服务器宕机,估计是很多站长们最不愿意看到的,有时一时的流量增长都可以让我们的云服务器挂掉,小编就碰到过类似的尴尬事儿,有一阵子主站云服务器频繁的宕机,故障不断,最后实在是受不了折磨咬牙给云服务器升了级,没有想到没多久又开始宕机了,并且很意外的发现网站流量竟然是不断的增涨,特别是云服务器升级后增涨最明显,仔细分析后原来是百度权重提升了。但频繁的宕机也造成权重不稳定,如果这时候使用了CDN那么效果是不是会更加的完美呢?CDN的内容分发机制有效的缓解了云服务器压力,也就不存在有宕机的可能(如果这时候还出现宕机,亲!不要傻高兴,这有90%的可能是被攻击了),并且流量增长也不会出现浏览体验的下降(用户访问的都是CDN节点的缓存内容)。有时候搜索引擎也会根据用户浏览体验来作为分配权重的主要依据,所以一个稳定的云服务器绝对是至关重要的,而CDN更是将稳定又上了一道保险。
被恶意的扫描攻击甚至DDOS攻击等估计老站长们应该不陌生了,小编自己就被攻击过,主站同样也有这样的遭遇,可以说就是因为被攻击、被恶意采集、被恶意镜像才使我下大力气去折腾CDN的,因为CDN可以隐藏自己网站的云服务器IP。看过《三体》小说的应该都知道里面有一个“黑暗森林”法则,其中就提出隐藏自己才是保命的唯一正确途径,一个网站的云服务器IP是暴露的就相当于是在“黑暗”的互联网里一个“明灯”指引着别人来骚扰和攻击你,这里小编要提醒各位站长们,永远不要相信云服务器商们所谓的云服务器安全防护能力有多强大,那都是噱头而已,简单点就是广告术语营销方式,防止攻击纯硬防设备都不敢保证百分百有效,何况是简单的软防云服务器呢?软防就相当于一个好看的门锁而已,而现在的DDOS攻击,随便一个上G当量的攻击就等于是坦克推到房子的效果,能不能防住,自己分析吧!
而CDN因为节点分散,这就是攻击者无从下手,攻击一个节点仅仅是影响一个节点的缓存访问而已,并且CDN的“内容路由”会自动的启用另一个节点,如果CDN服务节点数量够多,那么攻击者需要的流量包就会呈几何级的增加,这样攻击成本自然就高了,除非攻击者是“人傻、钱多”类的奇葩“人才”,要不是个正常人都会放弃攻击了(DDOS攻击,其实网上有很多免费的攻击器,高端点儿的可以在国外购买到,大概也就是几十美金的成本吧!)所以说,我一直建议网站站长们尽量启用一个CDN服务,哪怕是免费的都可以,就是有这个安全防护的原因。当然,真正面对专业的“黑客”攻击,CDN也是无能为力的。不过,真正的“黑客”是不会去攻击我们这种草根网站的,因为高手嘛,丢不起那个人,会被同行笑话的。反而是很多“小学生”类的“小人们”惯用这个手法,真是“防君子不防小人”呀!
CDN使用时的常见问题
说完了CDN的好处,那么再来说说使用CDN时的常见问题,这是很多网站站长们的盲区,也是CDN性能不能发挥的盲区,注意下面提到的常见问题绝对可以使你事倍功半的,并且CDN的效能也能发挥到极致。
1、启用CDN的话,一定要在DNS解析里单独给“搜索引擎”线路解析到“源站IP”。
搜索引擎理论上是支持网站CDN加速的,但是这是对“Google”这样的技术牛逼的搜索引擎来说的,至于说国内的搜索引擎,小编不是不支持国产搜索引擎只是就事儿论事儿哈!在这方面我最多能给40分,也就是说国内搜索引擎所谓的“支持”含金量实在是太低了。所以保险期间务必要记得启用CDN的时候一定要在DNS解析了单独给“搜索引擎”专线解析到“源站IP”,DNSPOD目前支持很多搜索引擎线路类型,推荐使用“搜索引擎”这个线路,至于说百度、搜狗、360这些细分可以忽略,毕竟DNS免费解析是有数量限制的。
2、WordPress网站站一定要做好CDN缓存规则配置里的动、静分离设置。
WordPress是PHP语言编写的,很多的后台操作和前台数据都是需要运行PHP代码来实现的,所以在启用CDN的时候,一定要不缓存动态文件,比如:.php;.asp;jsp;.do这类的,如果没有设置你会发现你的WordPress网站站在启用CDN后无法登录后台等等很多稀奇古怪的问题。常见的静态文件(比如:.jpg;.jpeg;.gif;.ico;.bmp 等等)可以把CDN缓存时间相对的设定时间长一些,这样可以有效提高CDN缓存的命中率也就是CDN服务的效能。类似.csss和.js文件这个根据自己网站主题的实际情况来应对,可缓存可不缓存,需要自己调试对比后决定。最后就是伪静态的.html缓存与否的问题了,缓存.html可以提升不小的浏览速度,但是弊端是.html页面上的动态评论数量和文章阅读量都会失去动态能力了,也就是不会有更新变化了,一般我的建议是不要在CDN上缓存.html,这样兼容性最好,性能上影响也不是很大。
3、使用CDN服务要学会和熟练掌握浏览器“开发者工具”的使用。
比如通过浏览器神器“谷歌浏览器”的“开发者工具”可以测试CDN服务的命中情况和一些本地缓存设置的具体情况,这对于CDN的最大效能发挥有至关重要的作用,当然这都是CDN服务高级使用的范畴了,小编也是在学习中,以后会多给大家交流的这方面的心得体会的。
4、要善于使用CDN服务后台的“工单”来请教客服指导。
谁都不是技术大牛,有疑难杂症解决不了的,就主动在CDN服务后台里“提交工单”向客服求救,同是这也是考量CDN服务商品质的一个重要指标,如果客服回复时间严重滞后,那么小编建议你尽快更换CDN服务吧!正规的CDN服务提供商都会拥有一个完善高效的客服支持体系的,所以大家一定要善加利用!