问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

什么是CDN(内容分发网络)?这篇文章告诉你,赶紧收藏!

发布网友 发布时间:2024-10-01 21:26

我来回答

1个回答

热心网友 时间:2024-10-17 18:01

很多人应该了解过浏览器缓存机制,通过浏览器缓存一方面可以改善用户的体验,而不用漫长地等待从服务器下载资源;另一方面减轻服务器压力、节省流量。CDN是另一种可以大幅度优化用户体验,且减轻服务器压力的技术。下面就自己了解的CDN技术分享下。

CDN的实现是一组技术的组合,每个技术都可以单独成文详细讨论,这里就不深入每个技术。

1、什么是CDN?

CDN的全称是Content Delivery Network,即内容分发网络。其目的是通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络"边缘"(边缘服务器),使用户可以就近取得所需的内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度。从技术上全面解决由于网络带宽小、用户访问量大、网点分布不均等原因所造成的用户访问网站响应速度慢的问题。

2、CDN技术原理

CDN技术是在美国首先兴起并迅速发展起来的一种解决互联网性能不佳问题的有效手段。其基本思路就是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。

2.1 分布式存储

这点显而易见,CDN网络将存储资源分布到各个地理位置、各个网段。存储系统作为CDN系统密不可分的一部分,将CDN分发的文件和数据库表记录内容存储起来,提供持续服务。存储系统采用三级存储架构,包括核心存储、CDN服务节点分布式缓存和终端本地缓存。任意一个点的存储崩溃或失效,并不影响系统服务的可用性。

2.2 内容管理

内容管理和全局的网络流量管理(Traffic Management)是CDN的核心所在。通过用户就近性和服务器负载的判断,CDN确保内容以一种极为高效的方式为用户的请求提供服务。总的来说,内容服务基于缓存服务器,也称作代理缓存(Surrogate),它位于网络的边缘,距用户仅有"一跳"(Single Hop)之遥。同时,代理缓存是内容提供商源服务器(通常位于CDN服务提供商的数据中心)的一个透明镜像。这样的架构使得CDN服务提供商能够代表他们客户,即内容供应商,向最终用户提供尽可能好的体验,而这些用户是不能容忍请求响应时间有任何延迟的。据统计,采用CDN技术能处理整个网站页面的 70%~95%的内容访问量,减轻服务器的压力,提升了网站的性能和可扩展性。

2.3 负载均衡

CDN负载均衡系统实现CDN的内容路由功能。它的作用是将用户的请求导向整个CDN网络中的最佳节点。最佳节点的选定可以根据多种策略,例如距离最近、节点负载最轻等。负载均衡系统是整个CDN的核心,负载均衡的准确性和效率直接决定了整个CDN的效率和性能。通常负载均衡可以分为两个层次:全局负载均衡(GSLB)和本地负载均衡(SLB)。

2.4 网络请求的重定向

当用户访问了使用CDN服务的资源时,DNS域名服务器通过CNAME方式将最终域名请求重定向到CDN系统中的智能DNS负载均衡系统。智能DNS负载均衡系统通过一组预先定义好的策略(如内容类型、地理区域、网络负载状况等),将当时能够最快响应用户的节点地址提供给用户,使用户可以得到快速的服务。

3、CDN资源访问流程

使用了CDN服务后,用户的访问流程如下图所示:

图:CDN用户访问流程图(摘自:思必达CDN)

1、用户向浏览器提供要访问网站的域名,域名解析的请求被发往网站的DNS域名解析服务器; 2、由于网站的DNS域名解析服务器对此域名的解析设置了CNAME,请求被指向CDN网络中的智能DNS负载均衡系统; 3、智能DNS负载均衡系统对域名进行智能解析,将响应速度最快的节点IP返回给用户; 4、浏览器在得到速度最快节点的IP地址以后,向CDN节点发出访问请求; 5、由于是第一次访问,CDN节点将回到源站取用户请求的数据并发给用户; 6、当有其他用户再次访问同样内容时,CDN将直接将数据返回给客户,完成请求/服务过程。

4、关于CDN的疑问

4.1 使用CDN后,如何获取客户端真实IP?

使用CDN服务之后获得原始IP地址发生变化。因为源服务器的请求都来自CDN节点,不知道客户原始IP。一般来说,CDN节点会以某种方式将源客户端的IP传递给源服务器,如有的网宿CDN,它是将源IP添加到了一个叫“Cdn-Src-Ip”的Http Header里,以C#语言为例,获得客户端真实IP的方式如下:(根据不同的CDN提供商可能会有所不同)。

C#代码

或者从HTTP请求Header中“HTTP_X_FORWARDED_FOR”字段获得。HTTP_X_FORWARDED_FOR的值是:"原始真实IP,1层代理IP,2层代理IP,....."。判断HTTP_X_FORWARDED_FOR是否为空(没有使用CDN或代理这个字段为空),不为空把这个作为IP地址。这是一个简单有效的方法。至于很复杂的情况就不处理了,比如多层代理。

4.2 采用CDN服务以后如何保证内容的更新和同步?

在CDN服务中,CDN节点中的内容与源网站内容的同步主要是靠设置刷新时间策略来实现的。针对不同的内容设置不同的刷新时间,对于更新频率比较低的内容可以设置较长的刷新时间以减轻回源站的访问压力;对频繁更新的内容,我们可以设置成10分钟或更短,以此来保证内容的同步。设置刷新时间可以按目录来设置,也可以按具体URL来设置,或按某个关键字段来设置,非常灵活。

作者:吴秦 出处: cnblogs.com/skynet/
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
为什么来大姨妈胸会胀 少儿学什么舞蹈 青年学什么舞蹈好 成年人学什么舞蹈 福州企业最低工资标准 2013年厦门的底薪是多少 生产要素的需求有哪些性质 生产要素的需求有何特点? 什么是生产要素需求 微观经济学要素需求什么是条件要素需求?它和要素需求有什么不同?_百度... CDN技术简介 2011年阴历7月29日早上八点半生是什么时辰 cdn内容是什么意思? 2015三月初九八点半时辰好吗 1990年阴历10月初八八点半左右女命里缺什么 2015年农历12月初六早上八点半是什么时辰 汪东城主演台版《原来是美男》什么时候播出? 汪东城主演的原来是美男什么时候播出? 12年蒙迪欧致胜现在强险得多少钱 中级经济师2011年 基础93,专业112,能过吗? ...材料单价被告知单价,投标时是否按被告知单价计价,如何调整? 2009年报考中级经济师的条件是什么 2009年中级经济师专业知识与实务应试指南:商业经济专业图书信息_百度... 重庆护士学校哪个好 重庆有哪些护理学校 重庆护理专业的学校 国寿福禄鑫尊两全保险分红型怎样能查一下我的国寿福禄鑫尊两全保险分 ... 重庆护理学校有哪些 怎样让驴肉的口感更好? 重庆有关护理专业的学校 什么是CDN?CDN的原理和作用是什么? 多少分之一减多少分之一等于十二分之一 F-22P级护卫舰,是采用的国产动力系统吗 反义词仔细 有哪些好点的四川专升本的学校? 四川有哪些专升本学校 灭火毯叠的方法 车用灭火毯有哪些种类 请问学电脑大专金融岀来专算钱是吗 金融电脑操作员是干嘛的 电脑银行是什么 世界四大纸飞机 第一名 帮忙翻译一下,翻译成英文摘要,不胜感激! 我就这么点分,不好意思了 沼气生产企业是否要取安全生产许可证 正安县2005年农村沼气建设项目工程实施方案组织管理 帮我想个节目名字,电台交友类的文艺栏目,想起个好一点的名字,比如现 ... 四川省农村能源条例第三章 质量监督和安全管理 有什么好看的恐怖片 气氛恐怖的 不要血腥恶心的 ...好看的恐怖片(咒怨、午夜凶铃等就不用提了,都看过了)?最好类似泰国... "俾面"是什么意思?如题 谢谢了