CDN缓存

CDN(contentdistribute network,内容分发网络)它的本质是一种缓存策略,将数据缓存在网络中的各个节点,用户以最快的速度获取最近节点的数据资源。

CDN主要是解决网络延迟问题。当输入一个网址到内容显示在屏幕上,中间加载耗费的这个时间就是网络延迟。

在没有使用CDN之前:

  用户第一次访问网站服务器时,浏览器会从服务器中获取所有资源,在传输过程中,浏览器会通过一些响应头从而确定是否需要将这个资源缓存到本地。当用户第二次访问该网站时,浏览器就会有先从缓存中加载资源,不用像服务器请求资源,从而提高了网站的访问速度。

对于一些用户访问量较大的网站而言,如果所有用户都去服务器请求书库,服务器会很快崩溃,并且在不同的网络以及不同地区的用户,请求服务器的速度也不一样。为了提高这部分用户的访问速度,CDN中提出一个新的网络架构,即创建一些最接近用户网络的边缘服务器,然后将文件缓存在这些边缘服务器(节点)上,这就是CDN缓存。

当服务接入CDN之后,浏览器本地缓存的资源过期之后,浏览器不是直接向源服务器请求资源,而是转向CDN边缘节点请求资源。CDN边缘节点将用户的数据缓存起来,如果CDN中的缓存也过期了,CDN边缘节点会向源服务器发出回源请求,从而获取最新资源。

CDN缓存的不足:

CDN缓存不仅减少了用户的访问延时,相应的也减少了源服务器的负载。这里需要注意的时,当源服务器资源更新之后,如果CDN节点上缓存的数据还未过期,用户访问到的依然是过期的缓存资源,这会导致用户最终访问出现偏差。因此,开发者需要手动刷新相关资源,使CDN缓存保持最新状态。

猜你喜欢

转载自www.cnblogs.com/xiaoan0705/p/11479920.html