CDN的全称是ContentDeliveryNetwork,即内容分发网络。全局调度系统通过将服务内容分发到全网的加速节点,使用户能够在附近节点获得所需内容,有效降低访问延迟,提高服务可用性。
那么它是如何工作的呢?
当您拥有一个网站时,您的网站将托管在虚拟主机或服务器拥有的web服务器上。主机的服务器可能位于某个地方。每当有人想加载你的网站时,他们会向主机的服务器发送消息,服务器会响应网站数据。
如果数据中心在南宁,网络用户在南宁,那么用户会得到更快的响应速度。如果网络用户位于后台,虽然还能正常工作,但是响应速度会慢很多,但是如果用户在香港、台湾省等地,加载速度会更慢,如果是外贸网站就更差了。地理距离越远,信息来回传递的时间就越长。
这和国际流量有关。从欧洲某地来的流量,必须经过各个地区服务器,通过海洋卫星或者海底电缆到达国内服务器,然后一路回传数据。根据配置和延迟的不同,很容易丢失请求、超时或加载失败,甚至在理想情况下,需要很长的加载时间。
内容分发网络本质上是由分散在世界各地的几十台甚至几百台服务器组成的网络。当用户回应你的网站时,网站回应两件事;从CDN提取媒体和/或脚本的基本文本、数据和说明。用户的浏览器遵循这些指示并从CDN请求媒体。
香港的用户不需要从中国下载100MB的图像或视频,而是直接下载
从国内服务器获取1.5MB数据,其余数据从香港CDN端点获取。
内容分发网络的SEO优势
当然,所有这些都是对现实的简化,但它非常接近核心概念。你可以看到它是如何加速全球用户的网页浏览的,那么这对你的网站优化有什么影响呢?
首先,页面加载时间是搜索排名因素。网页加载时间越长,网站的搜索排名就越差。
CDN可以缓存和加载网页的所有数据,但速度的提高可能会也可能不会影响您的业务。
相对来说,国内的搜索引擎只针对百度进行了优化。使用CDN分发网络当然可以提高页面加载速度,但是加载速度不会有明显的提高。毫秒的所有提升不太可能是#3和#1的搜索排名之差,但会是外贸网站(Google)决定性的排名因素。
如果你的网站只服务中国,你不在乎它在谷歌上是怎么显示的;因为那些不是潜在客户的人不会因为个人喜好而使用CDN。另一方面,如果你是外贸网站,可以利用CDN提高海外用户的响应加载时间。
其次,在某些情况下,CDN可以增加安全性。我的意思是,即使网站没有被SSL加密,CDN也可以使用HTTPS来提供媒体服务。
更快的图像索引,百度的图像搜索将根据其元数据和机器人执行的一些图像分析来索引图像,并由人工现场检查。对于一些网站来说,这可能是一个巨大的好处,但对于企业网站来说,未必有优势。尽管如此,如果你依靠图片获得大量流量,CDN可以让图片变得更快,加载速度越快,在搜索结果中的位置就越好。(博主的动画站无私使用CDN加速,所有网站都是图片为主,每个月的流量费用也是一笔不小的开支)。
CDN服务促进DDoS保护。当大量用户(通常是机器人)进行服务器请求时,通常会发送大量的媒体页面请求,导致服务器过载,最终导致网站无法访问。
由于你的媒体提供服务是由CDN提供的,DDoS攻击会交给CDN服务器,而不是你自己的。一些CDN服务可以实现反DDoS步骤,这些步骤可以将临时IP范围列入黑名单,防止站点被加载到请求的地理区域,等等。
此外,CDN可以记录有关DDoS和僵尸网络的数据,并可以为国际安全社区汇总这些数据。
CDN中的问题
首先,你可能会遇到跨站点的安全问题。如果你在网站上运行SSL但在CDN上不使用SSL,CDN可以对未加密的网站使用加密内容,反之亦然。如果您的网站是加密的,但媒体是未加密的,网络浏览器将发出警告。如果你的CDN正在使用转发脚本,跨站点脚本警告通常会阻止站点完全加载(常见于GoogleChrome)。
其次,错误的CDN配置可能会导致重复内容问题,大多数CDN都会为其托管的内容设置标准化。
第三,CDN可能会延迟网站加载,当你阻止媒体渲染连接CDN时就会出现这种情况。本质上,用户轮询您的Web服务器以找到要加载的页面,开始加载页面,然后在页面完全加载之前必须等待CDN的响应。
当您加载脚本或媒体时,您希望它们异步加载。这适用于你是否使用CDN。您不希望您的博客文章的文本必须等待嵌入的视频加载后才出现,是吗?无论你是否使用CDN,延迟加载内容是非常重要的。
CDN的成本,虽然大部分CDN都很便宜,阿里云一年包500GB国内流量也就100多块钱,但是如果是大型网站或者高流量网站,消耗的流量或者带宽是很高的。哔哩哔哩、acfun等视频网站的CDN消费更是惊人。
所以,任何费用都是费用,如果你预算不足,CDN的额外费用可能不是你想付的。另一方面,如果你的流量在飙升,你的虚拟主机有带宽限制,那么你可能不会选择CDN。
当然你也可以用百度的免费CDN,虽然效率不如付费CDN,但是如果你想尝试一下,估计没有比百度更好的免费CDN了。
如你所见,CDN的每一个可能的缺点都可以通过适当的配置来缓解。如果你遇到了问题,那么你可以去发现并解决问题,而不是放弃使用CDN的借口。
相关文章推荐欢迎分享,转载请注明来源:内存溢出
评论列表(0条)