CN108494870A - 基于cdn的动态数据加载方法及装置 - Google Patents
基于cdn的动态数据加载方法及装置 Download PDFInfo
- Publication number
- CN108494870A CN108494870A CN201810305656.2A CN201810305656A CN108494870A CN 108494870 A CN108494870 A CN 108494870A CN 201810305656 A CN201810305656 A CN 201810305656A CN 108494870 A CN108494870 A CN 108494870A
- Authority
- CN
- China
- Prior art keywords
- dynamic data
- user
- different
- application
- application access
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种基于CDN的动态数据加载方法及装置,涉及信息技术领域,主要目的在于能够提升动态数据加载效率。所述方法包括:CDN的DNS重定向解析中心接收用户的应用访问请求,应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合;根据标识集合判断距离用户最近的CDN节点是否缓存有与应用访问请求对应的动态数据,各个CDN节点缓存有不同应用标识,不同应用标识对应的不同用户标识表,不同用户标识表中不同用户标识对应的不同动态数据标识表,不同动态数据标识表中不同动态数据标识对应的不同动态数据;若是,则将应用访问请求重定向到最近的CDN节点响应应用访问请求,以实现动态数据的加载。本发明适用于基于CDN的动态数据加载。
Description
技术领域
本发明涉及信息技术领域,尤其是涉及一种基于CDN的动态数据加载方法及装置。
背景技术
随着信息技术的不断发展,内容分发网络(Content Delivery Network,CDN)随之出现。CDN是通过在现有的因特网中增加一层新的网络架构,将网站的内容发布到最接近用户的网络边缘节点,使用户可以就近取得所需的内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度。
CDN网络架构主要由中心和边缘两大部分组成,中心是指CDN网管中心和域名***(Domain Name System,DNS)重定向解析中心,DNS解析中心负责全局负载均衡;边缘是指异地节点,也即CDN分发的载体,它主要由缓存服务器(Cache)和负载均衡器等组成。当用户使用通用资源标志符(Uniform Resource Identifier,URI)访问加入CDN服务的网站时,该用户的域名解析请求将最终交给DNS重定向解析中心进行处理。DNS重定向解析中心通过一组预先定义好的策略,将适合该用户的节点地址提供给该用户,使该用户能够得到快速的服务。对于普通的Internet用户来讲,每个CDN节点就相当于一个放置在它周围的WEB服务器。通过DNS重定向解析中心的控制,用户的请求被透明地指向离他最近的节点,也即,对于用户来说,并不感知DNS重定向解析中心将用户指向哪个节点,节点中的CDN服务器会像网站的原始服务器一样,响应用户的请求。由于它离用户更近,因而响应时间必然更低。
目前,基于CDN对动态数据加载时,通常根据数据内容进行动态数据加载。然而,各个CDN节点中缓存的数据量较大且较杂。若通过上述方式加载动态数据,会造成动态数据查询和加载速度较慢,从而导致动态数据加载效率较低,影响用户访问应用的体验。
发明内容
本发明提供了一种基于CDN的动态数据加载方法及装置,主要在于能够实现根据动态数据所对应的应用、所对应的用户和本身动态情况加载动态数据,能够增加动态数据加载所依据的加载粒度,在大量数据情况下,节省动态数据查询时间,能够提升动态数据加载速度,进而能够提升动态数据加载效率,提升用户访问应用的体验。
根据本发明的第一个方面,提供一种基于CDN的动态数据加载方法,包括:
CDN的DNS重定向解析中心接收用户的应用访问请求,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合;
根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据;
若是,则将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载。
根据本发明的第二个方面,提供一种基于CDN的动态数据加载装置,包括:
接收单元,用于CDN的DNS重定向解析中心接收用户的应用访问请求,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合;
判断单元,用于根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据;
加载单元,用于所述判断单元根据所述标识集合判断距离所述用户最近的CDN节点缓存有与所述应用访问请求对应的动态数据,则将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载。
根据本发明的第三个方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:
CDN的DNS重定向解析中心接收用户的应用访问请求,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合;
根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据;
若是,则将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载。
根据本发明的第四个方面,提供一种服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以下步骤:
CDN的DNS重定向解析中心接收用户的应用访问请求,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合;
根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据;
若是,则将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载。
本发明提供的一种基于CDN的动态数据加载方法及装置,与目前根据数据内容进行动态数据加载相比,本发明CDN的DNS重定向解析中心能够接收用户的应用访问请求,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合;并能够根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据。与此同时,在确定距离所述用户最近的CDN节点缓存有与所述应用访问请求对应的动态数据时,能够将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载,从而能够实现根据动态数据所对应的应用、所对应的用户和本身动态情况加载动态数据,能够增加动态数据加载所依据的加载粒度,在大量数据情况下,节省动态数据查询时间,能够提升动态数据加载速度,进而能够提升动态数据加载效率,提升用户访问应用的体验。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了本发明实施例提供的一种基于CDN的动态数据加载方法流程图;
图2示出了本发明实施例提供的另一种基于CDN的动态数据加载方法流程图;
图3示出了本发明实施例提供的一种基于CDN的动态数据加载装置的结构示意图;
图4示出了本发明实施例提供的另一种基于CDN的动态数据加载装置的结构示意图;
图5示出了本发明实施例提供的一种基于CDN的动态数据加载装置的实体结构示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
如背景技术,基于CDN对动态数据加载时,通常直接根据数据内容进行动态数据加载。然而,各个CDN节点中缓存的数据量较大且较杂。若通过上述方式加载动态数据,会造成动态数据查询和加载速度较慢,从而导致动态数据加载效率较低,影响用户访问应用的体验。
为了解决上述问题,本发明实施例提供一种基于CDN的动态数据加载方法,如图1所示,所述方法包括:
101、CDN的DNS重定向解析中心接收用户的应用访问请求。
其中,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合。所述应用访问请求可以为所述用户通过客户端或者浏览器向所述CDN发送的,CDN为了提升响应所述应用访问请求的速度,通常会通过DNS重定向解析中心接收用户的应用访问请求,然后解析距离所述用户最近的CDN节点。具体地,可以根据所述用户发送的应用访问请求,确定所述用户的互联网协议(Internet Protocol,IP)地址,然后根据所述IP地址解析出CDN中距离所述用户最近的CDN节点。所述应用标识可以为应用名称,或者应用编号,本发明实施例不做限定。同样地,所述用户标识可以为用户姓名、用户身份证、手机号、所使用终端的设备号或者用户编号等。所述动态数据可以为仅在各个CDN节点上缓存一定时间的数据,具体地可以通过特定标志的特殊赋值表示所述动态数据标识,如特定标志可以为flag,当flag=1时,表示数据为动态数据,当flag=0时,表示数据为静态数据,为了满足用户访问需求,各个CDN节点可以一直缓存静态数据。
102、根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据。若是,则执行步骤103。
其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据。所述应用访问请求还可以携带统一资源定位符(Uniform Resource Locator,URL),在CDN节点上每个数据对应唯一的URL,与所述应用访问请求对应的动态数据具体可以为所述URL对应的动态数据。所述动态数据具体可以为图片、视频、音频等数据。
需要说明的是,所述步骤102具体可以为:根据所述应用标识、所述用户标识和所述动态数据标识判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,可以先判断所述最近的CDN节点上是否存在所述应用标识,判断所述应用标识对应的用户标识表中是否存在所述用户标识,判断所述用户标识对应的动态数据标识表中是否存在所述动态数据标识,若均存在,则说明所述最近的CDN节点上存在按照所述应用标识、所述用户标识和所述动态数据标识的缓存粒度缓存的动态数据。
103、将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载。
需要说明的是,所述最近的CDN节点在接收到定向来的所述应用访问请求后,会先根据所述应用标识、所述用户标识和所述动态数据标识在本地查询与所述应用访问请求对应的动态数据并反馈给所述用户,以实现用户能够看到应用加载完所述动态数据的界面。与目前直接根据数据内容进行动态数据加载相比,本发明实施例根据所述应用标识、所述用户标识和所述动态数据标识,查询和加载动态数据的粒度更精细,即通过分应用、分用户和本身的动态情况逐层查询动态数据,能够节省所述动态数据的查询时间,从而能够提升所述动态数据的加载速度和效率。
本发明实施例提供的一种基于CDN的动态数据加载方法,与目前根据数据内容进行动态数据加载相比,本发明实施例CDN的DNS重定向解析中心能够接收用户的应用访问请求,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合;并能够根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据。与此同时,在确定距离所述用户最近的CDN节点缓存有与所述应用访问请求对应的动态数据时,能够将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载,从而能够实现根据动态数据所对应的应用、所对应的用户和本身动态情况加载动态数据,能够增加动态数据加载所依据的加载粒度,在大量数据情况下,节省动态数据查询时间,能够提升动态数据加载速度,进而能够提升动态数据加载效率,提升用户访问应用的体验。
进一步的,为了更好的说明上述基于CDN的动态数据加载的过程,作为对上述实施例的细化和扩展,本发明实施例提供了另一种基于CDN的动态数据加载方法,如图2所示,所述方法包括:
201、CDN的DNS重定向解析中心接收用户的应用访问请求。
其中,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合。所述应用标识、所述用户标识和所述动态数据标识的相关解释已在步骤101详细解释,在此不进行赘述。
对于本发明实施例,为了提升动态数据的加载速度,还可以预先分应用,分用户在各个CDN节点中缓存动态数据,所述步骤201之前,所述方法还包括:根据不同应用标识对用户标识进行划分,得到不同用户标识表;根据所述不同用户标识表中的不同用户标识对动态数据标识进行划分,得到不同动态数据标识表;根据所述不同动态数据标识表中的不同动态数据标识对动态数据标识进行划分;将所述不同应用标识与所述不同用户标识表之间的第一射关系,所述不同用户标识与所述不同动态数据标识表之间的第二映射关系,所述不同动态数据标识与划分后的动态数据之间的第三映射关系缓存到所述各个CDN节点中。
202、判断所述应用访问请求是否为等幂性请求。若为等幂性请求,则执行步骤203。若并非等幂性请求,则执行步骤208。
其中,所述等幂性请求可以为多次请求对应的反馈结果相同的访问请求,即无论调用多少次所述应用访问请求中的URl,都不会有不同结果的访问请求方式。在本发明实施例中,通过所述步骤202能够保证实现应用的restful风格,restful风格是一种面向资源服务的应用设计方式,从而能够提升用户访问应用的体验。
203、判断距离所述用户最近的CDN节点是否缓存有所述应用标识。若是,则执行步骤204。
其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据。所述应用标识、所述用户标识和所述动态数据标识可以为层级递近查询的关系,即在执行完步骤203,执行步骤204、执行步骤205,若所述最近的CDN节点上不存在与所述应用标识匹配的应用标识、或者不存在与所述用户标识匹配的用户标识、或者不存在与所述动态数据标识匹配的动态数据标识,则确定所述最近的CDN节点不存在与所述应用访问请求对应的动态数据,因此,可以回源到源服务器响应所述应用访问请求,以实现所述动态数据加载。
需要说明的是,所述应用标识与用户标识表之间的对应关系可以如表1所示,所述用户标识与动态数据标识表之间的对应关系可以如表2所示,但不限定于此。
表1
应用标识表 | 用户标识表 |
应用标识1 | 用户标识表1 |
应用标识2 | 用户标识表2 |
表2
用户标识 | 动态数据标识表 |
用户标识1 | 动态数据标表1 |
用户标识2 | 动态数据标表2 |
204、判断与所述应用标识对应的用户标识表中是否存在所述用户标识。若是,则执行步骤205。若否,则执行步骤208。
需要说明的是,所述步骤204具体可以为:判断与所述应用标识对应的用户标识表中是否存在与所述用户标识匹配的用户标识,若存在,则确定与所述应用标识对应的用户标识表中存在所述用户标识。所述用户标识表中的用户标识可以为在向所述CDN节点缓存动态数据时预先配置的用户标识。
205、判断与所述用户标识对应的动态数据标识表中是否存在所述动态数据标识。若是,则执行步骤206。若否,则执行步骤208。
需要说明的是,所述步骤205具体可以为:判断与所述用户标识对应的动态数据标识表中是否存在与所述在所述动态数据标识匹配的动态数据标识,若存在,则确定与所述用户标识对应的动态数据标识表中存在所述动态数据标识。所述动态数据标识表中的动态数据标识表标识可以为在向所述CDN节点缓存动态数据时预先配置的动态数据标识表标识。
206、确定距离所述用户最近的CDN节点中缓存有与所述应用访问请求对应的动态数据。
对于本发明实施例,为了进一步地提升动态数据缓存和加载的效率,可以将所述应用访问请求中的URL划分为不同的目录层级,并构建目录树,然后按照分应用、分用户的缓存粒度和所述目录树的树状结构缓存所述动态数据,从而在加载所述动态数据时,能够快速的查找到与所述应用访问请求对应的动态数据。
207、将所述应用访问请求重定向到所述最近的节点响应所述应用访问请求,以实现所述动态数据的加载。
208、将所述应用访问请求回源到源服务器响应所述应用访问请求,以实现所述动态数据的加载。
需要说明的是,为了提升响应所述应用访问请求的速度,在将所述应用访问请求回源到源服务器时,若存在多个源服务器,可以将所述应用访问请求回源到响应最快的源服务器。具体地,可以测试各个源服务器的域名解析速度或者数据下载速度,然后将域名解析速度最快的源服务器或者数据下载速度最快的源服务器确定为响应最快的源服务器,若仅存在一个源服务器,可以直接将所述应用访问请求直接回源到唯一的源服务器上。为了进一步地提升响应所述应用访问请求的速度,源服务器接收到应用访问请求,查询与所述应用访问请求对应的动态数据后,可以将所述动态数据反馈给距离所述用户最近的CDN节点,然后通过距离所述用户最近的CDN节点将所述动态数据反馈给用户。
对于本发明实施例,为了实现基于应用的客户端与服务器双重控制动态数据的缓存时间,使得缓存空间得到有效利用,动态数据得到高效缓存,所述方法还包括:检测所述各个CDN节点上的动态数据的缓存时间时长是否大于或者等于第一预设时长,或者未被访问的时间时长是否大于或者等于第二预设时长;若是,则删除所述各个CDN节点上的动态数据。
其中,所述第一预设时长和所述第二预设时长可以根据用户需求进行设置,也可以根据***需求进行设置,本发明实施例不进行限定。例如,所述第一预设时长可以为5天、7天等,所述第二预设时长可以为3天、5天等。例如,若动态数据的缓存时间时长大于5天,或者未被访问的时间时长大于3天,则说明CDN节点上的动态数据缓存超期,通过删除所述动态数据能够节省CDN节点的存储空间,使得所述CDN节点上能够存储新的动态数据,从而能够提升动态数据的缓存效果。
本发明实施例提供的另一种基于CDN的动态数据加载方法,与目前根据数据内容进行动态数据加载相比,本发明实施例CDN的DNS重定向解析中心能够接收用户的应用访问请求,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合;并能够根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据。与此同时,在确定距离所述用户最近的CDN节点缓存有与所述应用访问请求对应的动态数据时,能够将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载,从而能够实现根据动态数据所对应的应用、所对应的用户和本身动态情况加载动态数据,能够增加动态数据加载所依据的加载粒度,在大量数据情况下,节省动态数据查询时间,能够提升动态数据加载速度,进而能够提升动态数据加载效率,提升用户访问应用的体验。
进一步地,作为图1的具体实现,本发明实施例提供了一种基于CDN的动态数据加载装置,如图3所示,所述装置包括:接收单元31、判断单元32和加载单元33。
所述接收单元31,可以用于CDN的DNS重定向解析中心接收用户的应用访问请求,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合。所述接收单元31是本装置中CDN的DNS重定向解析中心接收用户的应用访问请求的主要功能模块。
所述判断单元32,可以用于根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据。所述判断单元32是本装置中根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据的主要功能模块,也是核心模块用于触发加载单元33工作。
所述加载单元33,可以用于若所述判断单元32根据所述标识集合判断距离所述用户最近的CDN节点缓存有与所述应用访问请求对应的动态数据,则将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载。所述加载单元33是本装置中若根据所述标识集合判断距离所述用户最近的CDN节点缓存有与所述应用访问请求对应的动态数据,则将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载的主要功能模块。
对于本发明实施例,为了实现判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,所述判断单元32具体可以包括:判断模块321和确定模块322,如图4所示。
所述判断模块321,可以用于判断距离所述用户最近的CDN节点是否缓存有所述应用标识;若所述用户最近的CDN节点缓存有所述应用标识,则判断与所述应用标识对应的用户标识表中是否存在所述用户标识;若与所述应用标识对应的用户标识表中存在所述用户标识,则判断与所述用户标识对应的动态数据标识表中是否存在所述动态数据标识;
所述确定模块322,可以用于若与所述用户标识对应的动态数据标识表中存在所述动态数据标识,则确定距离所述用户最近的CDN节点中缓存有与所述应用访问请求对应的动态数据。
对于本发明实施例,为了提升动态数据的加载速度,还可以预先分应用,分用户在各个CDN节点中缓存动态数据,所述装置还可以包括:划分单元34和缓存单元35。
所述划分单元34,可以用于根据不同应用标识对用户标识进行划分,得到不同用户标识表;根据所述不同用户标识表中的不同用户标识对动态数据标识进行划分,得到不同动态数据标识表;并根据所述不同动态数据标识表中的不同动态数据标识对动态数据标识进行划分。
所述缓存单元35,可以用于将所述不同应用标识与所述不同用户标识表之间的第一射关系,所述不同用户标识与所述不同动态数据标识表之间的第二映射关系,所述不同动态数据标识与划分后的动态数据之间的第三映射关系缓存到所述各个CDN节点中。
对于本发明实施例,为了实现应用的restful风格,restful风格是一种面向资源服务的应用设计方式,它不是规范,不是标准,它一种设计模式,可以仅支持等幂性请求,具体地,所述判断单元32,具体可以用于判断所述应用访问请求是否为等幂性请求。
所述加载单元33,具体可以用于若所述应用访问请求是否为等幂性请求,则将所述应用访问请求重定向到所述最近的节点响应所述应用访问请求。
所述加载单元33,具体还可以若所述应用访问请求并非为等幂性请求,则将所述应用访问请求回源到源服务器响应所述应用访问请求。
对于本发明实施例,为了实现基于应用的客户端与服务器双重控制动态数据的缓存时间,使得缓存空间得到有效利用,动态数据得到高效缓存,所述装置还可以包括:检测单元36和删除单元37。
所述检测单元36,可以用于检测所述各个CDN节点上的动态数据的缓存时间时长是否大于或者等于第一预设时长,或者未被访问的时间时长是否大于或者等于第二预设时长。其中,所述第一预设时长和所述第二预设时长可以根据用户需求进行设置,也可以根据***需求进行设置,本发明实施例不进行限定。例如,所述第一预设时长可以为6天、8天等,所述第二预设时长可以为4天、6天等。
所述删除单元37,可以用于若所述检测单元36于检测所述各个CDN节点上的动态数据的缓存时间时长大于或者等于第一预设时长,或者未被访问的时间时长大于或者等于第二预设时长,则删除所述各个CDN节点上的动态数据。
需要说明的是,本发明实施例提供的一种基于CDN的动态数据加载装置所涉及各功能模块的其他相应描述,可以参考图1所示方法的对应描述,在此不再赘述。
基于上述如图1所示方法,相应的,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:CDN的DNS重定向解析中心接收用户的应用访问请求,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合;根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据;若是,则将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载。
基于上述如图1所示方法和如图3所示装置的实施例,本发明实施例还提供了一种基于CDN的动态数据加载装置的实体结构图,如图5所示,该装置包括:处理器41、存储器42、及存储在存储器42上并可在处理器上运行的计算机程序,其中存储器42和处理器41均设置在总线43上所述处理器41执行所述程序时实现以下步骤:CDN的DNS重定向解析中心接收用户的应用访问请求,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合;根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据;若是,则将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载。该装置还包括:总线43,被配置为耦接处理器41及存储器42。
通过本发明的上述技术方案,CDN的DNS重定向解析中心能够接收用户的应用访问请求,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合;并能够根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据。与此同时,在确定距离所述用户最近的CDN节点缓存有与所述应用访问请求对应的动态数据时,能够将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载,从而能够实现根据动态数据所对应的应用、所对应的用户和本身动态情况加载动态数据,能够增加动态数据加载所依据的加载粒度,在大量数据情况下,节省动态数据查询时间,能够提升动态数据加载速度,进而能够提升动态数据加载效率,提升用户访问应用的体验。此外,能够实现基于应用的客户端与服务器双重控制动态数据的缓存时间,使得缓存空间得到有效利用,动态数据得到高效缓存。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (10)
1.一种基于CDN的动态数据加载方法,其特征在于,包括:
CDN的DNS重定向解析中心接收用户的应用访问请求,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合;
根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据;
若是,则将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载。
2.根据权利要求1所述的方法,其特征在于,所述根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,包括:
判断距离所述用户最近的CDN节点是否缓存有所述应用标识;
若是,则判断与所述应用标识对应的用户标识表中是否存在所述用户标识;
若存在,则判断与所述用户标识对应的动态数据标识表中是否存在所述动态数据标识;
若存在,则确定距离所述用户最近的CDN节点中缓存有与所述应用访问请求对应的动态数据。
3.根据权利要求1或2任一项所述的方法,其特征在于,所述接收用户的应用访问请求之前,所述方法还包括:
根据不同应用标识对用户标识进行划分,得到不同用户标识表;
根据所述不同用户标识表中的不同用户标识对动态数据标识进行划分,得到不同动态数据标识表;
根据所述不同动态数据标识表中的不同动态数据标识对动态数据标识进行划分;
将所述不同应用标识与所述不同用户标识表之间的第一射关系,所述不同用户标识与所述不同动态数据标识表之间的第二映射关系,所述不同动态数据标识与划分后的动态数据之间的第三映射关系缓存到所述各个CDN节点中。
4.根据权利要求1所述的方法,其特征在于,所述根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据之前,所述方法还包括:
判断所述应用访问请求是否为等幂性请求;
所述将所述应用访问请求重定向到所述最近的节点响应所述应用访问请求,包括:
若为等幂性请求,则将所述应用访问请求重定向到所述最近的节点响应所述应用访问请求。
5.根据权利要求2所述的方法,其特征在于,所述判断所述应用访问请求是否为等幂性请求之后,所述方法还包括:
若并非等幂性请求,则将所述应用访问请求回源到源服务器响应所述应用访问请求。
6.根据权利要求1所述的方法,其特征在于,所述接收用户的应用访问请求之后,所述方法还包括:
检测所述各个CDN节点上的动态数据的缓存时间时长是否大于或者等于第一预设时长,或者未被访问的时间时长是否大于或者等于第二预设时长;
若是,则删除所述各个CDN节点上的动态数据。
7.一种基于CDN的动态数据加载装置,其特征在于,包括:
接收单元,用于CDN的DNS重定向解析中心接收用户的应用访问请求,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合;
判断单元,用于根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据;
加载单元,用于若所述判断单元根据所述标识集合判断距离所述用户最近的CDN节点缓存有与所述应用访问请求对应的动态数据,则将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载。
8.根据权利要求7所述的装置,其特征在于,包括:所述判断单元包括:
判断模块,用于判断距离所述用户最近的CDN节点是否缓存有所述应用标识;若所述用户最近的CDN节点缓存有所述应用标识,则判断与所述应用标识对应的用户标识表中是否存在所述用户标识;若与所述应用标识对应的用户标识表中存在所述用户标识,则判断与所述用户标识对应的动态数据标识表中是否存在所述动态数据标识;
确定模块,用于若与所述用户标识对应的动态数据标识表中存在所述动态数据标识,则确定距离所述用户最近的CDN节点中缓存有与所述应用访问请求对应的动态数据。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现以下步骤:
CDN的DNS重定向解析中心接收用户的应用访问请求,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合;
根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据;
若是,则将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载。
10.一种基于CDN的动态数据加载装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现以下步骤:
CDN的DNS重定向解析中心接收用户的应用访问请求,所述应用访问请求携带有应用标识、用户标识和动态数据标识的标识集合;
根据所述标识集合判断距离所述用户最近的CDN节点是否缓存有与所述应用访问请求对应的动态数据,其中,各个CDN节点缓存有不同应用标识,所述不同应用标识对应的不同用户标识表,所述不同用户标识表中不同用户标识对应的不同动态数据标识表,所述不同动态数据标识表中不同动态数据标识对应的不同动态数据;
若是,则将所述应用访问请求重定向到所述最近的CDN节点响应所述应用访问请求,以实现所述动态数据的加载。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810305656.2A CN108494870B (zh) | 2018-04-03 | 2018-04-03 | 基于cdn的动态数据加载方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810305656.2A CN108494870B (zh) | 2018-04-03 | 2018-04-03 | 基于cdn的动态数据加载方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108494870A true CN108494870A (zh) | 2018-09-04 |
CN108494870B CN108494870B (zh) | 2022-05-17 |
Family
ID=63314954
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810305656.2A Active CN108494870B (zh) | 2018-04-03 | 2018-04-03 | 基于cdn的动态数据加载方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108494870B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110704823A (zh) * | 2019-09-10 | 2020-01-17 | 平安科技(深圳)有限公司 | 数据请求方法、装置、存储介质及电子设备 |
CN112468570A (zh) * | 2020-11-24 | 2021-03-09 | 福建天泉教育科技有限公司 | 一种数据请求的处理方法及cdn服务端 |
CN114513403A (zh) * | 2021-12-31 | 2022-05-17 | 深圳触海科技有限公司 | 一种网络地址跳转行为标记和追踪故障信息的方法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020065919A1 (en) * | 2000-11-30 | 2002-05-30 | Taylor Ian Lance | Peer-to-peer caching network for user data |
CN102546788A (zh) * | 2011-12-29 | 2012-07-04 | 北京新媒传信科技有限公司 | 一种云平台管理方法和云平台 |
CN103166829A (zh) * | 2011-12-12 | 2013-06-19 | ***通信集团北京有限公司 | 网信页面提供方法及***、网信平台及业务*** |
CN103561049A (zh) * | 2013-09-05 | 2014-02-05 | 乐视网信息技术(北京)股份有限公司 | 一种处理终端调度请求的方法、***及装置 |
US20140164584A1 (en) * | 2012-12-07 | 2014-06-12 | Verizon Patent And Licensing Inc. | Selecting a content delivery network |
CN104506450A (zh) * | 2014-11-06 | 2015-04-08 | 小米科技有限责任公司 | 媒体资源反馈方法及装置 |
CN105491149A (zh) * | 2015-12-26 | 2016-04-13 | 深圳市金立通信设备有限公司 | 一种数据存储方法及终端 |
CN105653473A (zh) * | 2015-12-31 | 2016-06-08 | 中国科学院信息工程研究所 | 基于二元标识的缓存数据访问方法及装置 |
CN106775486A (zh) * | 2016-12-26 | 2017-05-31 | 中国建设银行股份有限公司 | 数据访问***、方法及路由服务器、配置中心服务器 |
US20190068701A1 (en) * | 2017-08-31 | 2019-02-28 | Boe Technology Group Co., Ltd. | Content Scheduling Method Based on CDN and P2P Network, and Communication Network |
-
2018
- 2018-04-03 CN CN201810305656.2A patent/CN108494870B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020065919A1 (en) * | 2000-11-30 | 2002-05-30 | Taylor Ian Lance | Peer-to-peer caching network for user data |
CN103166829A (zh) * | 2011-12-12 | 2013-06-19 | ***通信集团北京有限公司 | 网信页面提供方法及***、网信平台及业务*** |
CN102546788A (zh) * | 2011-12-29 | 2012-07-04 | 北京新媒传信科技有限公司 | 一种云平台管理方法和云平台 |
US20140164584A1 (en) * | 2012-12-07 | 2014-06-12 | Verizon Patent And Licensing Inc. | Selecting a content delivery network |
CN103561049A (zh) * | 2013-09-05 | 2014-02-05 | 乐视网信息技术(北京)股份有限公司 | 一种处理终端调度请求的方法、***及装置 |
CN104506450A (zh) * | 2014-11-06 | 2015-04-08 | 小米科技有限责任公司 | 媒体资源反馈方法及装置 |
CN105491149A (zh) * | 2015-12-26 | 2016-04-13 | 深圳市金立通信设备有限公司 | 一种数据存储方法及终端 |
CN105653473A (zh) * | 2015-12-31 | 2016-06-08 | 中国科学院信息工程研究所 | 基于二元标识的缓存数据访问方法及装置 |
CN106775486A (zh) * | 2016-12-26 | 2017-05-31 | 中国建设银行股份有限公司 | 数据访问***、方法及路由服务器、配置中心服务器 |
US20190068701A1 (en) * | 2017-08-31 | 2019-02-28 | Boe Technology Group Co., Ltd. | Content Scheduling Method Based on CDN and P2P Network, and Communication Network |
Non-Patent Citations (2)
Title |
---|
BOYANG YU等: "Resource allocation and request handling for user-aware content retrieval in the cloud", 《39TH ANNUAL IEEE CONFERENCE ON LOCAL COMPUTER NETWORKS》 * |
汤迪斌等: "一种CDN中的动态数据存储方案——UbDP", 《计算机应用》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110704823A (zh) * | 2019-09-10 | 2020-01-17 | 平安科技(深圳)有限公司 | 数据请求方法、装置、存储介质及电子设备 |
CN112468570A (zh) * | 2020-11-24 | 2021-03-09 | 福建天泉教育科技有限公司 | 一种数据请求的处理方法及cdn服务端 |
CN114513403A (zh) * | 2021-12-31 | 2022-05-17 | 深圳触海科技有限公司 | 一种网络地址跳转行为标记和追踪故障信息的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108494870B (zh) | 2022-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106933871B (zh) | 短链接处理方法、装置及短链接服务器 | |
US8583810B2 (en) | Session affinity cache and manager | |
AU2009222468B2 (en) | Segregating anonymous access to dynamic content on a web server, with cached logons | |
US7827280B2 (en) | System and method for domain name filtering through the domain name system | |
CN107786621B (zh) | 一种用户信息管理方法、访问处理方法及装置和*** | |
CN107295033B (zh) | 一种路由方法及装置 | |
CN103684885B (zh) | 一种网站服务器访问异常确定方法及装置 | |
CN109669718A (zh) | ***权限配置方法、装置、设备及存储介质 | |
CN108494870A (zh) | 基于cdn的动态数据加载方法及装置 | |
CN110120971B (zh) | 一种灰度发布方法、装置及电子设备 | |
CN105915621A (zh) | 访问数据的方法及预处理服务器 | |
US11210198B2 (en) | Distributed web page performance monitoring methods and systems | |
CN111432045A (zh) | 一种域名***服务器调度算法的测试方法、装置及设备 | |
US20190379748A1 (en) | Systems, devices, and methods for presenting customized content through web api | |
CN107145491B (zh) | 页面渲染方法及装置 | |
CN110889073A (zh) | 页面请求的响应方法、服务器及计算机存储介质 | |
CN113609401A (zh) | 书城频道页面的动态展示方法、电子设备及存储介质 | |
CN110336874A (zh) | 一种访问服务的方法、装置、服务器及存储介质 | |
CN110708309A (zh) | 反爬虫***及方法 | |
CN107483565B (zh) | 一种服务后台识别方法、代理服务器及计算机存储介质 | |
CN109936575A (zh) | 页面访问方法、装置、存储介质及处理器 | |
CN107707373B (zh) | 一种基于api请求的动态资源访问加速方法 | |
CN103020241A (zh) | 基于会话的动态页面缓存方法和*** | |
CN103428171B (zh) | 一种session的处理方法、应用服务器及*** | |
CN106817296A (zh) | 信息推荐的测试方法、装置以及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |