CDN是否支持对动态内容进行加速?

CDN是否支持对动态内容进行加速?,第1张

动态内容是指不同的请求访问中获得不同数据的内容,例如:网站中的.asp、.jsp、.php、.perl、.cgi文件、API接口和动态交互请求(post、put和patch等请求)。

对于动态请求的内容,CDN无法缓存实时变化的内容,需要用户每次回源访问您的源站服务器。若您配置的域名业务类型为网站加速、文件下载加速或点播加速,不支持动态内容的加速。

若您的网站含有较多动态内容,可以配置全站加速。全站加速融合了动态和静态加速,用户请求资源时,静态内容从边缘节点就近获取,动态内容通过动态加速技术智能选择较优路由回源获取。目前锐速云CDN支持通过提交工单的方式配置全站加速。

的问题。关于这个问题,一直存在一些分歧,部分人认为有效,部分人认为无效,主要是CDN技术也在更新,而且是比较低调的进行着更新,所以并不是所有人都清楚CDN对动态加速的效果。其实如果真的追究到第一代的CDN技术,那确实是不支持动态加速的,因为数据库这种实时更新而且随时都在更新的东西实在是没办法把它缓存到镜像服务器上,比较专业的数据库例如MSSQL倒是提供了热备的异地同步功能,不过实现起来相当复杂,而且使用简易型数据库的用户不在少数,所以缓存技术拿数据库没辙,一般在处理碰到动态页面的时候就把URL直接引回主站,所以加速了跟没加速一个效果,有时因为URL解析产生的延迟等问题反而还比不加速的情况下要慢;还有一种处理动态页面的方法,不记得是哪个CDN运营商提出的了,其实就是把动态页面生成静态后再利用静态缓存分发的技术实现加速,不过这个生成静态的操作是手动的,也就是由用户来确认生成哪些静态页面,然后点击一个生成的按钮,就开始进行该操作,而其实还有一些资料提出的CDN加速原理是有点类似IIS加速ASP.NET那样,也就是把每个被访问过的动态页面都自动生成一个静态页然后分发出去,这样下次再有人访问这个动态页面时就会先检查该页面之前是否被访问过,如果被访问过就引到镜像站点,否则就先由主站生成一个页面,再分发到镜像服务器上,当然这种方式存在不少需要解决的问题,例如当主站的某个静态页已经生成静态了,然后主站又产生了一些新的数据,使得这个页面内容已经产生变化,那么镜像服务器上的静态数据如何与主站保持这种高度的实时同步?老实说这个问题非常难解决,于是,部分有实力也就是指有大量带宽的运营商开始采用带宽加速的方式实现动态的CDN加速。这个原理是怎么样的呢?简单来说就类似用镜像服务器给访问者做了一个高速的代理服务器,用过代理服务器的朋友应该知道,假如XX用户通过代理访问A站点的某个动态页面,那么代理服务器会先自己去访问A站点的这个动态页面,然后把A站点返回的内容再转发给XX用户,这样不管A站点的数据如何更新,XX用户每次访问那个动态页面都会从代理服务器得到最新的内容,当然,条件就是代理服务器连接A站点的速度跟连接用户的速度都非常快,这样才会有加速的效果,所以需要代理服务器有非常好的带宽,这样的话,一般的服务商是做不来的,所以大家知道为什么很多CDN服务商对动态内容的加速效果不好了吧,其实就是实力有限,带宽不足。最后,还有一个问题是大家经常忽略的,就是CDN的几种作用。很多人都知道CDN是用来给各地访问者加速或者说南北互通,但其实CDN都还有一个很重要的作用就是分流减负。

CDN网站加速的工作原理:当用户访问已经加入CDN服务的网站时,首先通过DNS重定向技术确定最接近用户的最佳CDN 节点,同时将用户的请求指向该节点。当用户的请求到达指定节点时,CDN的服务器(节点上的高速缓存)负责将用户请求的内容提供给用户。具体流程为:用户 在自己的浏览器中输入要访问的网站的域名,浏览器向本地DNS请求对该域名的解析,本地DNS将请求发到网站的主DNS,主DNS根据一系列的策略确定当 时最适当的CDN节点,并将解析的结果(IP地址)发给用户,用户向给定的CDN节点请求相应网站的内容。

CDN的核心技术就是其中的路由算法,怎么判断客户离哪个节点最近,有点类似于城市最短路径的算法, 同时还要根据网络流量负载等情况,保证网络处于最佳的运行状态。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/89418.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-06
下一篇2023-03-06

发表评论

登录后才能评论

评论列表(0条)

    保存