CDN 的作用与基本过程

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。

 

技术原理解说也可参见另一文:https://blog.csdn.net/jiangyu1013/article/details/88795690

 

1.简介


CDN,Content Distribute Network:内容分发网络。CDN解决的是如何将数据快速可靠从源站传递到用户的问题。用户获取数据时,不需要直接从源站获取,通过CDN对于数据的分发,用户可以从一个较优的服务器获取数据,从而达到快速访问,并减少源站负载压力的目的。

内容发布网络(CDN) 是一个经策略性部署的整体系统,包括分布式存储、负载均衡、网络请求的重定向和内容管理4个要件。

 

2.动机


为什么不进行数据的直接交付,即让用户直接从源站获取数据呢? 
我们常说的互联网实际上由两层组成,一层是以TCP/IP为核心的网络层即Internet(因特网),另一层则是以万维网WWW为代表的应用层。数据从服务器端交付到用户端,至少有4个地方可能会造成网络拥堵。 


1. “第一公里”,这是指万维网流量向用户传送的第一个出口,是网站服务器接入互联网的链路。这个出口带宽决定了一个网站能为用户提供的访问速度和并发访问量。当用户请求量超出网站的出口带宽,就会在出口处造成拥塞。 


2. “最后一公里”,万维网流量向用户传送的最后一段链路,即用户接入互联网的链路。用户接入的带宽影响用户接收流量的能力。随着电信运营商的大力发展,用户的接入带宽得到了很大改善,“最后一公里”问题基本得到解决。 


3. ISP互联,即因特网服务提供商之间的互联,比如中国电信和中国联通两个网络运营商之间的互联互通。当某个网站服务器部署在运营商A的机房,运营商B的用户要访问该网站,那就必须经过A、B之间的互联互通点进行跨网访问。从互联网的架构来看,不同运营商之间的互联互通带宽,对任何一个运营商网络流量来说,占比都非常小。因此,这里也通常是网络传输的拥堵点。 


4. 长途骨干传输。首先是长距离传输时延问题,其次是骨干网络的拥塞问题,这些问题都会造成万维网流量传输的拥堵。 
从以上对于网络拥堵的情况分析,如果网络上的数据都使用从源站直接交付到用户的方法,那么将极有可能会出现访问拥塞的情况。 


如果能有一种技术方案,将数据缓存在离用户最近的地方,使用户以最快的速度获取,那这对于减少网站的出口带宽压力,减少网络传输的拥堵情况,将起到很大的作用。CDN正是这样一种技术方案。

 

3.基本过程


用户通过浏览器访问传统的(没有使用CDN)网站的过程如下。 

没æ使ç¨CDNçç½ç«è®¿é®è¿ç¨
 
1. 用户在浏览器中输入要访问的域名。 
2. 浏览器向DNS服务器请求对该域名的解析。 
3. DNS服务器返回该域名的IP地址给浏览器。 
4. 浏览器使用该IP地址向服务器请求内容。 
5. 服务器将用户请求的内容返回给浏览器。

 

如果使用了CDN,则其过程会变成以下这样。 

使ç¨äºCDNçç½ç«è®¿é®è¿ç¨
 
1. 用户在浏览器中输入要访问的域名。 
2. 浏览器向DNS服务器请求对域名进行解析。由于CDN对域名解析进行了调整,DNS服务器会最终将域名的解析权交给CNAME指向的CDN专用DNS服务器。 
3. CDN的DNS服务器将CDN的负载均衡设备IP地址返回给用户。 
4. 用户向CDN的负载均衡设备发起内容URL访问请求。 
5. CDN负载均衡设备会为用户选择一台合适的缓存服务器提供服务。 
选择的依据包括:根据用户IP地址,判断哪一台服务器距离用户最近;根据用户所请求的URL中携带的内容名称,判断哪一台服务器上有用户所需内容;查询各个服务器的负载情况,判断哪一台服务器的负载较小。 
基于以上这些依据的综合分析之后,负载均衡设置会把缓存服务器的IP地址返回给用户。 
6. 用户向缓存服务器发出请求。 
7. 缓存服务器响应用户请求,将用户所需内容传送到用户。 
如果这台缓存服务器上并没有用户想要的内容,而负载均衡设备依然将它分配给了用户,那么这台服务器就要向它的上一级缓存服务器请求内容,直至追溯到网站的源服务器将内容拉取到本地。

 

总结


在网站和用户之间引入CDN之后,用户不会有任何与原来不同的感觉。 
使用CDN服务的网站,只需将其域名的解析权交给CDN的负载均衡设备,CDN负载均衡设备将为用户选择一台合适的缓存服务器,用户通过访问这台缓存服务器来获取自己所需的数据。 
由于缓存服务器部署在网络运营商的机房,而这些运营商又是用户的网络服务提供商,因此用户可以以最短的路径,最快的速度对网站进行访问。因此,CDN可以加速用户访问速度,减少源站中心负载压力。

参考资料
《CDN技术详解》,雷葆华,孙颖,等著,电子工业出版社,2012年
http://baike.baidu.com/item/内容分发网络/4034265
http://wiki.baiwanzhan.com/term/seo/cdn/
https://gtmetrix.com/why-use-a-cdn.html
https://support.rackspace.com/how-to/what-is-a-cdn/
http://superuser.com/questions/420949/how-do-cdn-content-distribution-networks-work
http://superuser.com/questions/477314/how-do-dns-servers-work?rq=1


--------------------- 
作者:haozlee 
原文:https://blog.csdn.net/lihao21/article/details/52808747 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/447825.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2019南昌网络赛  I. Yukino With Subinterval 树状数组套线段树

I. Yukino With Subinterval题目链接: Problem Descripe Yukino has an array \(a_1, a_2 \cdots a_n\). As a tsundere girl, Yukino is fond of studying subinterval. Today, she gives you four integers $l, r, x, y $, and she is looking for how many diffe…

健康丨汗从哪里出 病从哪里来

1.额头出汗肝阳上亢如果额头常常出很多汗,中医认为可能是肝阳上亢引起的。建议你去医院检查一下甲状腺激素分泌是否正常,因为这很可能是甲状腺激素分泌过剩造成的。  医师建议:平时尽量保持心境平和,少生气,女人尤其…

CDN(内容分发网络)技术原理

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1. 前言 Internet的高速发展,给人们的工作和生活带来了极大的便利,对Internet的服务品质和访问速度要求越来越高…

3.0 go mod之远程仓库搭建-代码示例

注意事项 所谓的远程仓库指的是github,个人首次使用go mod在其他云仓库上尝试,并未成功,这浪费了我近2小时的时间; 如果你是初次尝试,那么除了github的地址换一下之外,其他的都按照示例操作,比如…

视界云:CDN{内容分发网络} 知识详解

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 CDN 全称:Content Delivery Network或Content Ddistribute Network,即内容分发网络 基本思路: 尽可能避开互联…

2019牛客多校第七场E Find the median 权值线段树+离散化

Find the median题目链接: https://ac.nowcoder.com/acm/contest/887/E 题目描述 Let median of some array be the number which would stand in the middle of this array if it was sorted beforehand. If the array has even length let median be smallest of …

男人肾虚的8大表现

导语:肾虚是一种常见的现象。尤其是男人,最害怕的就是肾虚。男人的了肾虚怎么办,肾虚主要都有哪些症状。下面专家给大家介绍一下男人肾虚的几种表现: 一、畏寒肢冷 “畏寒”指有怕冷而且怕风吹的感觉。“肢冷”指四肢手足冰冷&…

更改 nginx 默认端口 ( ubuntu、linux )

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1. 我想让一个demo 站点直接域名访问,不带端口,所以想用 80 端口启动对应前端工程。 发现 80 被 nginx 占用&a…

怎么更改Rstudio中的默认目录

方法一、 每次启动Rstudio之后,执行代码 setwd("F:/R/R_data")默认目录就会修改为双引号内的位置路径。 方法二、 对Rstudio进行设置一次即可。 ①点击Tools,打开Global Options. ②将位置设置完毕,点击 Apply 确认即可。 ③Rstudi…

职场十个方法 让专业气质成为你的符号!

1、任何时候都要准时。   上班或是开会的时候迟到,都会给别人一种你对工作不够认真的印象。所以请一定要多多注意时间的问题。当然你要注意的不仅仅是开始的时间,还有午休结束的时间,可不要贪图几分钟的自由,弃你的专业气质于不…

docker 虚悬镜像 ( 悬空镜像 ) :镜像没有仓库名或没有标签

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. 我们在build镜像的过程中&#xff0c;可能会产生一些临时的不具有名称也没有作用的镜像他们的名称一般都是<none>, 我们可以执…

R-apply()函数

创建一个列表变量&#xff0c;它的第一个元素包含所有从0到9的平方数&#xff0c;第二个元素为10到19之内的所有平方数&#xff0c;依此类推&#xff0c;最后一个元素为90到99之内的平方数。没有平方数的元素也应该被包含在内&#xff01; 学习网友的解题思路&#xff0c;用的是…

编程兴趣真的是由“热情”驱动的吗?

当我告诉人们我以写代码为生时&#xff0c;他们翻着白眼问我编程是不是特无聊&#xff1f;有许多编程博客告诉我们&#xff0c;如果你想要精于编程&#xff0c;那么就必须先热爱编程。那么&#xff0c;这是不是意味着如果没有激情&#xff0c;那你就写不出一行代码&#xff1f;…

心生想往 ... ...

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 连日里的忙碌 ... 终又忍不住开始想往 ... 听着歌儿 放纵篇篇翻飞思绪 ... 抛下纷繁的朝九晚六和所有加班&#xff0c;于每一日&#…

C# 打开文件/跳转链接

mark一下~ 打开文件 1.打开文件夹&#xff1a; System.Diagnostics.Process.Start(FolderPath);-- 打开文件夹 System.Diagnostics.Process.Start(FolderPath"/"FileName); -- 打开文件夹中某个文件 2.用IE打开文件: System.Diagnostics.Process.Start("Explore…

身体曲线如何反映出健康

站在镜子前&#xff0c;看看自己的身材&#xff0c;是否匀称优美?身体曲线不仅是美和丑的象征&#xff0c;同时还能够反映出你的健康状况。 1.腿细 有些人四肢纤细或运动后易酸痛&#xff0c;可能意味着肌肉少、力量弱。多项研究表明&#xff0c;肌肉与健康状况及寿命都存在…

路的尽头 ...

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 一直一直的 想要有一个只属于自己的地方&#xff0c;或许可以说不只是一个地方&#xff0c;我想要的是一个叫作家的地方... 每每看到温…

R 数据框的操作

1.插入一列 根据自带数据集beaver 进行操作&#xff0c;比如插入一列id。 > colnames(beaver1) [1] "day" "time" "temp" "activ" > nrow(beaver1) [1] 114 方法1&#xff1a; new_beaver1$id rep(1,114)方法2 new_beaver1…

Docker 下载 JDK 镜像(docker search 、docker pull)

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 我有一个dockerfile 中要引用 jdk。 运行脚本发现 居然没有JDK 原始镜像。早期是下载过的&#xff0c;不记得什么时候清掉了。 于是重新…

入夏多吃这些“杀菌菜”

天气逐渐变热&#xff0c;病原菌滋生快&#xff0c;肝炎、急性胃炎、急性肠炎、痢疾、霍乱等消化道疾病容易爆发。此时多吃“杀菌蔬菜”有杀灭和抑制细菌病毒的作用&#xff0c;有时甚至光靠这些杀菌菜就可以治疗疾病。 专家建议&#xff0c;在炎热的夏季为了保证胃肠道的健康&…