CDN的原理及对SEO的影响
http://www.williamlong.info/archives/4059.html
CDN的概念最早于1995年由美国麻省理工大学提出,是一套能够实现用户就近访问的网络解决方案。具体方法是:采用智能路由和流量管理技术,将用户的访问请求指向 CDN网络中健康且响应最快的CDN节点,用户通过直接对此CDN节点的访问,获得所需要的内容和数据,就近访问加速了访问速度。
利用内容分发与复制机制,客户不需要改动原来的网站结构,只需修改少量的DNS配置,就可以加速网络的响应速度。 当用户访问使用CDN服务的网站时,解析请求将最终由CDN服务商提供的DNS域名解析服务器来处理。它通过将当时能够最快响应用户的节点地址提供给用户,使用户可以有效准确的得到快速的服务。同时,它还与分布在不同地点的所有CDN节点保持是实时通信,搜集各节点的健康状态,确保用户访问的成功率。
上面的说明有些专业,用户访问网站实际上就是用户的电脑寻找网站服务器的一个过程。先让我们看一下使用CDN服务之前,用户访问网站的流程:
1.用户在自己的浏览器中输入要访问的网站的域名,浏览器首先查看本机系统目录下的一个hosts文件。该文件位于WINDOWS\system32\drivers\etc下,没有扩展名,但是可以用记事本打开。里面一行对应着域名和IP值。如果有域名对应的IP,浏览器直接就用该IP访问网站。
2.如果没有域名对应的IP地址,浏览器向本地DNS服务器请求对该域名的解析; 本地DNS服务器就是由当地电信或者联通给分配的DNS.
3.本地DNS服务器到根DNS服务器上找所授权的DNS记录,记录返回到本地DNS服务器;
4.本地DNS服务器按照记录到网站授权的域名解析服务器请求解析主机名,域名解析服务器将IP地址作为解析结果送给本地DNS服务器。
5.本地DNS服务器将IP返还给用户;
6.用户在得到IP地址后,向该网站服务器进行访问,网站服务器将相应的内容和数据提供给用户。
使用CDN服务之后,用户访问流程:
前三步流程相同,从第四步开始:
1.域名的解析请求在被发往CDN解析服务器后,服务器将此域名响应速度最快的节点IP发送给本地DNS服务器,本地DNS服务器将此IP发给用户。上图的第四、五步。
2.用户在得到IP地址后向CDN节点发出访问请求第一次的访问。
3.CDN节点将回源网站服务器取回内容数据发给用户。
4.CDN节点会缓存大量数据,若有其他用户访问相同内容时,直接将内容数据返回用户,完成从请求到服务的全过程。
目前CDN服务的厂家大部分是收费的,提供免费CDN服务厂家不多,随着这类产品的增多,厂家之间相互竞争也将逐渐激烈,服务内容、服务项目、服务质量也会随之更上层楼!所以,相信会有更多、更好的免费CDN的出现。
OK,上面说完了CDN的原理,现在我们再分析一下采用CDN服务对SEO(搜索引擎优化)有没有影响,因为对CDN技术实现并不是完全了解,所以只是猜测一下几种情况:
1.首先要了解蜘蛛是怎样爬过来的,抓取源服务器数据的。
对于已经收录的网站,蜘蛛肯定是直接抓取源服务器IP地址的数据,不大可能每次抓取前再重新通过DNS服务器解析一次,所以我们不用担心更新的数据会不会被抓取到。
2.CDN节点缓存的更新频率。
如果蜘蛛抓取的是CDN节点里面的数据,这里面数据都是存放在CDN缓存里面的,CDN既然是一种缓存技术,那么它的实时性肯定是无法实现的,因此它的更新频率就很重要了。在写这篇文章的时候,我打电话咨询了国内最大CDN服务商网宿科技的客服,客服的说法是会根据访问量及访问行为自动的设定更新频率,也可以在后台根据网站不同的栏目设定灵活多样的缓存策略和主、被动的数据更新方式;并进行智能调控和缓存。所以,这里对于SEO的影响也是可以忽略的。
3.IP的变化对SEO的权重。
万一蜘蛛抓取到各个节点的数据呢?会不会造成一个网站好像有不同的IP地址,搜索引擎会不会对这种情况有所惩罚呢?查看百度官方SEO指南 可以看到这样的话:“Baiduspider对站点的抓取方式和普通用户访问一样,只要普通用户能访问到的内容,我们就能抓取到。不管是用什么技术,只要能保证用户能流畅的访问网站,对搜索引擎就没有影响。” 既然百度都这样说,谷歌对于抓取和收录更没有问题。同时,百度也提到“建议尽量选择有实力的服务商和成熟的技术,不成熟的技术容易导致访问不稳定,这就有可能影响搜索引擎的抓取了”,所以选择一个安全,稳定的CDN服务提供商仍然是很重要的。
CDN对SEO的影响是很多朋友都关心的问题,从网友的一些实验来看,无论是从抓取速度和频率来说都没有什么问题,甚至是有益的。另外即使存在一些问题,搜索引擎以及CDN提供商应该会想到解决的办法。
CDN的原理及对SEO的影响的更多相关文章
- CDN加速原理
原文链接:http://www.72e.net/cdnspeed/cdnyuanli.aspx 首先,让我们来看一下传统的Internet网络的基本结构和数据传输情况,如下图所示. Internet ...
- 什么是网站CDN服务,CDN加速原理?
转载:http://server.zzidc.com/fwqcjwt/728.html 摘要:在为您的网站打开速度发愁吗?您有没有发现有些大网站每天拥有几十万或者上百万,甚至几亿用户的访问,而且不同用 ...
- 一文搞懂CDN加速原理
开源Linux 长按二维码加关注~ 一.什么是 CDN CDN的全称是(Content Delivery Network),即内容分发网络.其目的是通过在现有的Internet中增加一层新的CACHE ...
- h1、h2、h3标签及strong标签对页面seo的影响
今天和大家来聊下h1,h2,h3,strong几个标签,在网页中的使用对页面seo的影响,也阐述了个人的一些想法. 首先简要讲下H标签及strong标签的含义:<h1>.<h2> ...
- URL结尾反斜杠对SEO的影响(转)
开始纠结网站URL加不加反斜杠对SEO的影响,还有些人把这个反斜杠说的神乎其神,我擦,本人手贱百度了一下,果然“博大精深”,敬请参考! 从百度站长平台的外链分析里,我们可以看到,一些目录结构的URL, ...
- 浅谈服务器对SEO的影响,该如何选择服务器?
对于SEO,很多人想的都是怎么做好网站的内部优化,做好外部推广.其实SEO没什么技术含量,到网上搜别人的心得看,千篇一律,都是翻来覆去的说一样的东西,就像吃不同人做的馒头,吃来吃去就是一个味道.笔者经 ...
- 301 和 302 对 SEO 的影响
网站优化中,经常会面临网站链接修改或改变的事情,其中一个解决办法就是使用网站跳转的方式,处理变化的链接,下面讲述301和302跳转对SEO的影响. 301(永久移动) 请求的网页已被永久移动到新位置. ...
- cdn工作原理
cdn工作原理 1.用户向浏览器输入www.web.com这个域名,浏览器第一次发现本地没有dns缓存,则向网站的DNS服务器请求: 2.网站的DNS域名解析器设置了CNAME,指向了www.web. ...
- CDN 工作原理剖析
CDN 工作原理剖析 CDN / Content Delivery Network / 内容分发网络 https://www.cloudflare.com/zh-cn/learning/cdn/wha ...
随机推荐
- POJ2778&HDU2243&POJ1625(AC自动机+矩阵/DP)
POJ2778 题意:只有四种字符的字符串(A, C, T and G),有M中字符串不能出现,为长度为n的字符串可以有多少种. 题解:在字符串上有L中状态,所以就有L*A(字符个数)中状态转移.这里 ...
- PowerDesigner实用技巧小结(4)
下述十四个技巧,是许多人在大量的数据库分析与设计实践中,逐步总结出来的.对于这些经验的运用,读者不能生帮硬套,死记硬背,而要消化理解,实事求是,灵活掌握.并逐步做到:在应用中发展,在发展中应用. 1. ...
- DES 算法的 C++ 与 JAVA 互相加解密
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...
- nape.geom.MarchingSquares
Nape中的MarchingSquares类很简单,只有一个静态函数run,不过这对绘制那些简单的形状来说,已经足够了(当然MarchingSquares能做的不只这些).下面是这个run方法的结构: ...
- Android手机上判断网络运营商
我们想获取手机的运营商信息.通常都会去调用系统的TelephonyManager类的取数据.但是很多时候可能取不到卡的信息(例如双卡手机和 一些特殊卡),这样就区别不了运营商了.但是有时候我们的需求要 ...
- C _数据结构 _线性表的顺序存储
#ifndef __MY_SEQLIST_H__ #define __MY_SEQLIST_H__ typedef void SeqList; typedef void SeqListNode; // ...
- [Effective C++ --010]令赋值操作符返回一个reference to *this
差不多最经典的就是这个了: x = y = z = ; 解读为: x = (y = ( z = )); 如果没有返回值,上述代码就不能通过编译. 其实看到标题就差不多明白这一条了,但是为什么连续赋值时 ...
- 读取XML帮助类
using System; using System.Data; using System.Configuration; using System.Linq; using System.Web; us ...
- 第一章 02 谈谈static关键词
引文一下吧 http://blog.csdn.net/hackbuteer1/article/details/7487694 一.static在C语言中的含义 1.静态变量作用范围在一个文件内,程序开 ...
- Socket异步通信学习三
接下来是客户端部分,采用同步接收模式,在SocketClient项目中新建了一个SynServer类,用于存放socket服务器代码,和AsynServer类似,主要有4个方法: 有一个全局socke ...