科普文 – 什么是CDN、CDN有什么作用、CDN如何加速、CDN原理

Demo

什么是CDN?

CDN的中文名叫:内容分发网络,CDN服务器也是:负载均衡服务器,怎么理解呢?举个例子:假设你的所在地是广东,你需要访问某个网站,这个网站的服务器却在北京,这就涉及到一个问题:网络延迟。玩游戏的小伙伴肯定都知道游戏中有一个延迟这个东西,网站也同理。远距离传输数据难免会出现规避不了的延迟和掉包。CDN就相当于将北京服务器上的内容分散到全国各地的服务器上。

例子二:大家基本都用过某东吧,某东自营的产品基本都配送很快。那是因为它在全国有八个大型物流仓库,购买产品后,就会从距离你物理位置最近的仓库发货,提高运输速度。CDN和这个原理差不多

CDN有什么作用?

继续使用上面的例子。假如你需要去人家服务器上去下载某个文件,而这个服务器的带宽只有100M,只有你一个人下载的时候可能没什么感觉,但是如果全国各地的人和你同时去下载这个文件呢?100个人同时下载,平均每个人到手也就1M的下载带宽了。这时候就可以发挥CDN的作用了,假设公司在北京的服务器是主服务器,公司就可以在全国每个省都去再放置一台服务器用于CDN服务,那么公司就可以把用户需要下载的文件全部缓存在各个CDN服务器上,让用户去就近下载,这样就能环节中心服务器(主服务器)的压力。当然CDN的作用可不止于此。

CDN如何加速?

一般在公网可以访问的网站都会有一个公网IP地址,浏览器会把域名请求先发送那个给相应的DNS服务器进行解析,将解析获得的IP地址返回给浏览器,让浏览器去解析到的IP地址上获取相应的文件。CDN也是在这个DNS解析中产生作用的,当你给域名开通CDN之后,设置一条CDN的解析记录,这条记录会使域名被解析之后指向一个CDN网络专用的DNS请求服务器。这个专门的DNS服务器会给你的浏览器返回一个距离你物理地址最近的一台CDN服务器的IP地址(有时候不一定分配的是物理距离最近服务器),然后你的浏览器就会去访问DNS返回给你的CDN服务器地址,以达到加速和缓解中心服务器压力的目的

CDN原理?

当时开通好CDN以后,CDN服务器并不会马上去缓存源站(主服务器,简称:源站)资源。第一次访问的时候,用户的请求就会到达CDN服务器,CDN服务器在自己这里找不到用户请求的文件,就会向上级服务器继续请求,如果上级服务器依旧没有用户需要请求的资源。那么CDN服务器就会直接想源站服务器请求对应文件。当文件请求到数据返回的时候,CDN服务器就会将请求的文件缓存一份在自己这里,如果后续再访问,或者其他人访问的时候。CDN服务器就可以直接返回这个已经缓存好的文件了。CDN使用者也可以在CDN管理后台设置缓存刷新时间,规定相隔多长时间CDN服务器就去源站请求一次,刷新CDN上的缓存文件。

阅读剩余
THE END