使用CDN内容分发网络加速(前端性能优化面试题)
通常面试官会问到什么是CDN加速以及CDN加速的原理,所以这个时候你就需要牢记下面的一段话。
1.什么是CDN(重点)
CDN 是 内容分发网络
。CDN的本质是利用缓存技术,将数据快速可靠从源站传递给用户。
用户获取数据,不需要直接从源站获取,而是通过CDN对于数据的分发,用户可以从一个较优的服务器获取数据,从而达到快速访问,并减少源站负载压力的目的。
2.为什么使用CDN加速(重点)
-
如果网络上的数据都使用从源站直接交付到用户的方法,那么极有可能会出现访问拥塞的情况。
-
CDN是将数据缓存在离用户最近的地方,使用户以最快的速度获取,对于减少网站的出口带宽压力,减少网络传输的拥堵情况,将起到很大的作用。
3.CDN的原理(了解)
1)用户在通过浏览器访问数据,未使用CDN加速网站的大致过程如下:
如图,根据以上过程:
- ①用户在浏览器中输入要访问的域名。
- ②浏览器向DNS服务器请求对该域名的解析。
- ③DNS服务器返回该域名的IP地址给浏览器。
- ④浏览器使用该IP地址向服务器请求内容。
- ⑤服务器将用户请求的内容返回给浏览器。
2)如果使用了CDN,则其过程会变成以下这样:
- ①用户在浏览器中输入要访问的域名。
- ②浏览器向DNS服务器请求对域名进行解析。DNS服务器会最终将域名的解析权交给
CDN专用DNS服务器
。 - ③
CDN专用DNS服务器
将CDN负载均衡设备
的IP地址返回给用户。 - ④用户向
CDN负载均衡设备
发起内容URL访问请求。 - ⑤
CDN负载均衡设备
会为用户选择一台合适的CDN缓存服务器
提供服务。
选择的依据包括:
根据用户IP地址,判断哪一台服务器距离用户最近;
根据用户所请求的URL中携带的内容名称,判断哪一台服务器上有用户所需内容;
查询各个服务器的负载情况,判断哪一台服务器的负载较小。
基于以上这些依据的综合分析之后,负载均衡设置会把缓存服务器的IP地址返回给用户。 - ⑥用户向缓存服务器发出请求。
- ⑦缓存服务器响应用户请求,将用户所需内容传送到用户。
如果这台缓存服务器上并没有用户想要的内容,而负载均衡设备依然将它分配给了用户,那么这台服务器就要向它的上一级缓存服务器请求内容,直至追溯到网站的源服务器将内容拉取到本地。
4.总结重点!!!!
CDN可以加速用户访问速度,减少源站中心负载压力。