CN109167828A - Cdn缓存方法和系统 - Google Patents
Cdn缓存方法和系统 Download PDFInfo
- Publication number
- CN109167828A CN109167828A CN201810958734.9A CN201810958734A CN109167828A CN 109167828 A CN109167828 A CN 109167828A CN 201810958734 A CN201810958734 A CN 201810958734A CN 109167828 A CN109167828 A CN 109167828A
- Authority
- CN
- China
- Prior art keywords
- access
- resource
- cdn node
- request
- target
- 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.)
- Pending
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/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- 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/563—Data redirection of data network streams
-
- 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
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请涉及一种CDN缓存方法和系统,应用于第一CDN节点,其中的方法包括:接收客户端发送的请求;判断所述第一CDN节点的本地缓存中是否存在所述请求对应的数据;如果存在,则将所述请求对应的数据返回给所述客户端;如果不存在,则将所述请求重定向到第二CDN节点;其中,所述第一CDN节点的本地缓存中的数据为预先确定的热点数据;所述第二CDN节点的配置高于所述第一CDN节点的配置。本申请可以实现使较低配置的第一CDN节点只服务用户请求率较高的热点数据,有效提高了CDN缓存命中率,降低了请求回源率,进而减少了第一CDN节点的磁盘IO,显著提高了低配置节点的资源利用率和服务效率。
Description
技术领域
本申请涉及内容分发网络技术领域,尤其涉及一种CDN缓存方法和系统。
背景技术
相关技术中,内容分发网络(Content Delivery Network,CDN)是通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务器节点上。其目的是使用户可就近取得所需内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度。通常,CDN节点中的服务器设备由CDN厂商采购并部署到CDN节点,高配置的服务器设备服务能力高,但是采购成本也更高,低配置的服务器虽然采购成本低,但服务能力差。低配置的服务器节点往往具有磁盘存储空间不足,磁盘IO敏感的缺点,如果单台低配置服务器节点强行用于CDN缓存服务,会出现请求回源率高,进而导致服务质量差的问题。
发明内容
为至少在一定程度上克服相关技术中存在的问题,本申请提供一种CDN缓存方法和系统。
根据本申请实施例的第一方面,提供一种CDN缓存方法,应用于第一CDN节点,包括:
接收客户端发送的请求;
判断所述第一CDN节点的本地缓存中是否存在所述请求对应的数据;
如果存在,则将所述请求对应的数据返回给所述客户端;
如果不存在,则将所述请求重定向到第二CDN节点;
其中,所述第一CDN节点的本地缓存中的数据为预先确定的热点数据;
所述第二CDN节点的配置高于所述第一CDN节点的配置。
可选地,所述方法还包括:
读取缓存访问日志,并对读取的缓存访问日志进行过滤,得到目标访问日志;
统计所述目标访问日志对应的目标资源的访问热度,并根据访问热度对所述目标资源进行排序;
根据排序后的目标资源确定热点资源;
加载所述热点资源到所述第一CDN节点的本地缓存中;
对所述热点资源的访问进行热度衰减。
可选地,所述对读取的缓存访问日志进行过滤,包括:
根据预设的过滤策略,对读取的缓存访问日志进行过滤,所述过滤策略包括如下项中的至少一项:
过滤掉非HTTP302响应的日志;
时间过滤;
请求域名过滤;
文件大小过滤。
可选地,所述统计所述目标访问日志对应的目标资源的访问热度,包括:
提取所述目标访问日志中的访问URL和存储URL;
根据所述存储URL索引目标访问日志对应的目标资源;
根据所述访问URL计算每一条目标资源对应的目标访问日志的数量,得到所述目标资源的访问热度。
可选地,所述加载所述热点资源到所述第一CDN节点的本地缓存中,包括:
获取所述热点资源的访问URL;
根据所述访问URL将所述热点资源加载到所述第一CDN节点的本地缓存中。
可选地,所述对所述热点资源的访问进行热度衰减,包括:
将所述热点资源的访问热度以衰减因子为倍数进行衰减;
在衰减之后的访问热度低于热度阈值时,删除统计访问热度的数据结构。
可选地,所述方法还包括:
定时删除本地缓存中的冷数据;
所述冷数据是加载到本地缓存中的超过预设时间长度的资源。
根据本申请实施例的第二方面,提供一种CDN缓存系统,应用于第一CDN节点,包括:
缓存组件,所述缓存组件用于:
接收客户端发送的请求;
判断所述第一CDN节点的本地缓存中是否存在所述请求对应的数据;
如果存在,则将所述请求对应的数据返回给所述客户端;
如果不存在,则将所述请求重定向到第二CDN节点;
其中,所述第一CDN节点的本地缓存中的数据为预先确定的热点数据;
所述第二CDN节点的配置高于所述第一CDN节点的配置。
可选地,该CDN缓存系统,还包括:热点组件,所述热点组件用于:
读取缓存访问日志,并对读取的缓存访问日志进行过滤,得到目标访问日志;
统计所述目标访问日志对应的目标资源的访问热度,并根据访问热度对所述目标资源进行排序;
根据排序后的目标资源确定热点资源;
加载所述热点资源到所述第一CDN节点的本地缓存中;
对所述热点资源的访问进行热度衰减。
可选地,该CDN缓存系统,还包括:删除组件,所述删除组件用于:
定时删除本地缓存中的冷数据;
所述冷数据是加载到本地缓存中的超过预设时间长度的资源。
可选地,所述热点组件还用于:
根据预设的过滤策略,对读取的缓存访问日志进行过滤,所述过滤策略包括如下项中的至少一项:
过滤掉非HTTP302响应的日志;
时间过滤;
请求域名过滤;
文件大小过滤。
可选地,所述热点组件还用于:
提取所述目标访问日志中的访问URL和存储URL;
根据所述存储URL索引目标访问日志对应的目标资源;
根据所述访问URL计算每一条目标资源对应的目标访问日志的数量,得到所述目标资源的访问热度。
可选地,所述热点组件还用于:
获取所述热点资源的访问URL;
根据所述访问URL将所述热点资源加载到所述第一CDN节点的本地缓存中。
可选地,所述热点组件还用于:
将所述热点资源的访问热度以衰减因子为倍数进行衰减;
在衰减之后的访问热度低于热度阈值时,删除统计访问热度的数据结构。
根据本申请实施例的第三方面,提供一种CDN缓存系统,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:
接收客户端发送的请求;
判断所述第一CDN节点的本地缓存中是否存在所述请求对应的数据;
如果存在,则将所述请求对应的数据返回给所述客户端;
如果不存在,则将所述请求重定向到第二CDN节点;
其中,所述第一CDN节点的本地缓存中的数据为预先确定的热点数据;
所述第二CDN节点的配置高于所述第一CDN节点的配置。
可选地,所述处理器还被配置为:
读取缓存访问日志,并对读取的缓存访问日志进行过滤,得到目标访问日志;
统计所述目标访问日志对应的目标资源的访问热度,并根据访问热度对所述目标资源进行排序;
根据排序后的目标资源确定热点资源;
加载所述热点资源到所述第一CDN节点的本地缓存中;
对所述热点资源的访问进行热度衰减。
可选地,所述处理器还被配置为:
根据预设的过滤策略,对读取的缓存访问日志进行过滤,所述过滤策略包括如下项中的至少一项:
过滤掉非HTTP302响应的日志;
时间过滤;
请求域名过滤;
文件大小过滤。
可选地,所述处理器还被配置为:
提取所述目标访问日志中的访问URL和存储URL;
根据所述存储URL索引目标访问日志对应的目标资源;
根据所述访问URL计算每一条目标资源对应的目标访问日志的数量,得到所述目标资源的访问热度。
可选地,所述处理器还被配置为:
获取所述热点资源的访问URL;
根据所述访问URL将所述热点资源加载到所述第一CDN节点的本地缓存中。
可选地,所述处理器还被配置为:
将所述热点资源的访问热度以衰减因子为倍数进行衰减;
在衰减之后的访问热度低于热度阈值时,删除统计访问热度的数据结构。
可选地,所述处理器还被配置为:
定时删除本地缓存中的冷数据;
所述冷数据是加载到本地缓存中的超过预设时间长度的资源。
根据本申请实施例的第四方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由控制器的处理器执行时,使得控制器侧能够执行一种CDN缓存方法,所述方法应用于第一CDN节点,包括:
接收客户端发送的请求;
判断所述第一CDN节点的本地缓存中是否存在所述请求对应的数据;
如果存在,则将所述请求对应的数据返回给所述客户端;
如果不存在,则将所述请求重定向到第二CDN节点;
其中,所述第一CDN节点的本地缓存中的数据为预先确定的热点数据;
所述第二CDN节点的配置高于所述第一CDN节点的配置。
可选地,所述方法还包括:
读取缓存访问日志,并对读取的缓存访问日志进行过滤,得到目标访问日志;
统计所述目标访问日志对应的目标资源的访问热度,并根据访问热度对所述目标资源进行排序;
根据排序后的目标资源确定热点资源;
加载所述热点资源到所述第一CDN节点的本地缓存中;
对所述热点资源的访问进行热度衰减。
可选地,所述对读取的缓存访问日志进行过滤,包括:
根据预设的过滤策略,对读取的缓存访问日志进行过滤,所述过滤策略包括如下项中的至少一项:
过滤掉非HTTP302响应的日志;
时间过滤;
请求域名过滤;
文件大小过滤。
可选地,所述统计所述目标访问日志对应的目标资源的访问热度,包括:
提取所述目标访问日志中的访问URL和存储URL;
根据所述存储URL索引目标访问日志对应的目标资源;
根据所述访问URL计算每一条目标资源对应的目标访问日志的数量,得到所述目标资源的访问热度。
可选地,所述加载所述热点资源到所述第一CDN节点的本地缓存中,包括:
获取所述热点资源的访问URL;
根据所述访问URL将所述热点资源加载到所述第一CDN节点的本地缓存中。
可选地,所述对所述热点资源的访问进行热度衰减,包括:
将所述热点资源的访问热度以衰减因子为倍数进行衰减;
在衰减之后的访问热度低于热度阈值时,删除统计访问热度的数据结构。
可选地,所述方法还包括:
定时删除本地缓存中的冷数据;
所述冷数据是加载到本地缓存中的超过预设时间长度的资源。
本申请的实施例提供的技术方案可以包括以下有益效果:
由于第一CDN节点的本地缓存中的数据为预先确定的热点数据,即用户在客户端请求频率较高的数据,因此,在接收到客户端发送的请求后,判断第一CDN节点的本地缓存中是否存在请求对应的数据,如果存在,则说明该请求对应的数据为热点数据,然后将该数据返回给客户端;如果不存在,则说明该请求对应的数据不是热点数据,那么将该请求重定向到第二CDN节点,然后由第二CDN节点对该请求做进一步处理。又因为第二CDN节点的配置高于第一CDN节点的配置,因此,配置较低的第一CDN节点仅服务热点数据,有效提高了CDN缓存命中率,使回源量仅限于热点数据,进而减少了第一CDN节点的磁盘IO,显著提高了低配置节点的资源利用率和服务效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是根据一示例性实施例示出的一种CDN缓存方法的流程示意图。
图2是根据另一示例性实施例示出的一种CDN缓存方法的流程示意图。
图3是根据另一示例性实施例示出的一种CDN缓存系统的结构示意图。
图4是根据另一示例性实施例示出的一种CDN缓存系统的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的方法和系统的例子。
图1是根据一示例性实施例示出的一种CDN缓存方法的流程示意图。
如图1所示,本实施例提供的方法包括以下步骤:
步骤S11,接收客户端发送的请求;
步骤S12,判断所述第一CDN节点的本地缓存中是否存在所述请求对应的数据;
步骤S13,如果存在,则将所述请求对应的数据返回给所述客户端;
步骤S14,如果不存在,则将所述请求重定向到第二CDN节点;
其中,所述第一CDN节点的本地缓存中的数据为预先确定的热点数据;
所述第二CDN节点的配置高于所述第一CDN节点的配置。
在步骤S11中,接收客户端发送的请求后,读取客户端的HTTP请求数据,然后根据防盗链逻辑判断该请求的合法性,确认请求合法后进入响应生成阶段。
在步骤S12、步骤S13和步骤S14中,判断第一CDN节点的本地缓存中是否存在所述请求对应的数据。如果存在,说明该请求对应的数据为热点数据,那么直接读取本地缓存中的数据并返回给客户端;如果不存在,说明该请求对应的数据不是热点数据,那么将该请求以HTTP302的形式重定向到第二CDN节点,重定向请求的格式为scheme://目标IP/原始URL,其中的目标IP即为第二CDN节点的地址,该地址可以通过配置给出,也可以使用父层中心节点VIP地址;原始URL即为原始统一资源定位符(Uniform Resource Locator,URL),客户端收到HTTP302响应后对其进行跟踪处理,由于重定向的格式使用IP直接访问,不经过DNS域名解析,这使得请求直接进入到目标IP的第二CDN节点,第二CDN节点对此种格式的请求进行进一步处理,即截取请求中的原始URL并转发到对应的虚拟主机中服务。
本实施例中,由于第一CDN节点的本地缓存中的数据为预先确定的热点数据,即用户在客户端请求频率较高的数据,因此,在接收到客户端发送的请求后,判断第一CDN节点的本地缓存中是否存在请求对应的数据,如果存在,则说明该请求对应的数据为热点数据,然后将该数据返回给客户端;如果不存在,则说明该请求对应的数据不是热点数据,那么将该请求重定向到第二CDN节点,然后由第二CDN节点对该请求做进一步处理。又因为第二CDN节点的配置高于第一CDN节点的配置,因此,配置较低的第一CDN节点仅服务热点数据,有效提高了CDN缓存命中率,使回源量仅限于热点数据,进而减少了第一CDN节点的磁盘IO,显著提高了低配置节点的资源利用率和服务效率。
进一步地,参见图2,所述方法还包括以下步骤:
步骤S21,读取缓存访问日志,并对读取的缓存访问日志进行过滤,得到目标访问日志;
步骤S22,统计所述目标访问日志对应的目标资源的访问热度,并根据访问热度对所述目标资源进行排序;
步骤S23,根据排序后的目标资源确定热点资源;
步骤S24,加载所述热点资源到所述第一CDN节点的本地缓存中;
步骤S25,对所述热点资源的访问进行热度衰减。
在步骤S21中,缓存的访问日志按时间切割并归档在某个特定操作系统路径,读取该路径下的N时间内的缓存访问日志,所述N为可配置值,一般N默认为十分钟。
进一步地,所述对读取的缓存访问日志进行过滤,包括:
根据预设的过滤策略,对读取的缓存访问日志进行过滤,所述过滤策略包括如下项中的至少一项:
过滤掉非HTTP302响应的日志;
时间过滤;
请求域名过滤;
文件大小过滤。
其中,缓存访问日志中包含请求的详细信息,比如,请求响应码(如200,302)、请求访问时间、请求的域名以及请求资源的大小等。
时间过滤指过滤掉不在特定时间区间内的访问日志,比如过去十分钟以前的日志。请求域名过滤指过滤掉非指定域名的日志,特定域名在配置文件中指定。文件大小过滤指过滤掉文件大小大于特定值的日志,旨在防止因为某些文件大小过大的热点文件阻塞热点加载过程的问题。
进一步地,在步骤S22中,统计所述目标访问日志对应的目标资源的访问热度,包括:
提取所述目标访问日志中的访问URL和存储URL;
根据所述存储URL索引目标访问日志对应的目标资源;
根据所述访问URL计算每一条目标资源对应的目标访问日志的数量,得到所述目标资源的访问热度。
其中,一个目标资源对应于存储中的一个文件,存储URL标示了目标资源在CDN缓存中的唯一性,因此,可以用存储URL索引目标资源。目标访问日志中记录了对每个目标资源的访问记录,目标访问URL中包含可变信息如访问时间戳,所以,一般同一个目标资源可能会有多条目标访问日志,即多条目标访问URL。因此,每一条目标资源对应的访问日志数量可以根据访问URL的数量来确定。
具体的,首先针对每条目标访问日志,提取访问URL和存储URL。访问URL即用户原始URL,其中含有防盗链信息,原始URL用于之后的热点加载,存储URL标示了资源在CDN缓存中的唯一性,通常存储URL去除了防盗链信息,用于热度统计。其次根据提取出的存储URL统计所有目标访问的热度,设置访问热度初始值为零,从目标访问日志中提取出存储URL,根据存储URL索引到访问的目标资源,然后,计算该目标资源有多少条访问日志,每有一条访问日志,则其对应的目标资源访问热度加一。最后将所有的目标资源根据热度降序排列。
需要说明的是,目标资源的访问热度就是目标资源的访问频率,即一个周期内,每个资源访问了多少次,周期可根据实际情况确定。
进一步地,在步骤S23中,所述根据排序后的目标资源确定热点资源,包括:
选取排序后的目标资源中的前N个目标资源作为热点资源;
其中,N为可配置值,其值通常根据一个统计周期内热点容量和平均文件大小共同确定。
具体的,N=热点容量/平均文件大小;热点容量即为设备磁盘容量,平均文件大小为经验值,可能根据业务不同而不同。因此计算所得热点资源数量N为估计值。
进一步地,在步骤S24中,所述加载所述热点资源到所述第一CDN节点的本地缓存中,包括:
获取所述热点资源的访问URL;
根据所述访问URL将所述热点资源加载到所述第一CDN节点的本地缓存中。
具体的,热点资源是访问最频繁的N个目标资源,对应N个存储URL和N个访问URL,访问URL中含有防盗链信息,根据这N个访问URL就可以通过本地重放的方式将热点资源加载到本地缓存中,加载接口可由缓存模块提供。
需要说明的是,热点资源的访问URL为存储URL对应的原始URL。
进一步地,在步骤S25中,所述对所述热点资源的访问进行热度衰减,包括:
将所述热点资源的访问热度以衰减因子为倍数进行衰减;
在衰减之后的访问热度低于热度阈值时,删除统计访问热度的数据结构。
具体的,对所有目标资源的访问做热度衰减。因为不同业务类型中的热点资源并不是一成不变的,同一个业务在不同时间段热点资源也是不同的。因此,热度衰减能更准确地模拟真实的业务中热点的变化。每统计周期内衰减程度由衰减因子确定,衰减因子为可配置值,默认为0.9,即每统计周期热度衰减为当前访问热度的0.9倍。当热度衰减为热度阈值下限时,不再保留热度统计记录,即,删除统计访问热度的数据结构,这样就不用继续做热度衰减了。其中的热度阈值为可配置值,默认为0.1。
本实施例中,提供了一种热度统计、热点提取、热点加载以及热度衰减的热点分析方法,其中步骤S21和步骤S22为热度统计,步骤S23为热点提取,步骤S24为热点加载,步骤S25为热度衰减。这种热点分析方法可以离线准确地统计出热点资源请求,为应用于第一CDN节点的CDN缓存方法提供准确的热点数据。
进一步地,所述方法还包括以下步骤:
定时删除本地缓存中的冷数据;
所述冷数据是加载到本地缓存中的超过预设时间长度的资源。
其中,定时删除本地缓存中的冷数据,即根据热点资源写入到本地缓存的时间,删除写入时间超过特定时间长度的缓存数据。
具体的,热点资源加载到第一CDN节点的本地缓存中的时间由缓存组件来记录,当该资源加载到本地缓存中的时间超过预设时间长度(比如30天)时,该资源便成为冷数据,定时删除这些冷数据,比如,每天删除30天前加载到本地缓存中的数据。
本实施例中,定时删除第一CDN节点中的本地缓存中的冷数据资源,可以释放出新的磁盘空间,用于存储新的热点资源。
图3是根据另一示例性实施例示出的一种CDN缓存系统的结构示意图。
如图3所示,本实施例提供的系统,应用于第一CDN节点,所述系统包括:缓存组件31,所述缓存组件用于:
接收客户端发送的请求;
判断所述第一CDN节点的本地缓存中是否存在所述请求对应的数据;
如果存在,则将所述请求对应的数据返回给所述客户端;
如果不存在,则将所述请求重定向到第二CDN节点;
其中,所述第一CDN节点的本地缓存中的数据为预先确定的热点数据;
所述第二CDN节点的配置高于所述第一CDN节点的配置。
进一步地,本实施例还包括:热点组件32,所述热点组件用于:
读取缓存访问日志,并对读取的缓存访问日志进行过滤,得到目标访问日志;
统计所述目标访问日志对应的目标资源的访问热度,并根据访问热度对所述目标资源进行排序;
根据排序后的目标资源确定热点资源;
加载所述热点资源到所述第一CDN节点的本地缓存中;
对所述热点资源的访问进行热度衰减。
进一步地,本实施例还包括:删除组件33,所述删除组件用于:
定时删除本地缓存中的冷数据;
所述冷数据是加载到本地缓存中的超过预设时间长度的资源。
进一步地,所述热点组件还用于:
根据预设的过滤策略,对读取的缓存访问日志进行过滤,所述过滤策略包括如下项中的至少一项:
过滤掉非HTTP302响应的日志;
时间过滤;
请求域名过滤;
文件大小过滤。
进一步地,所述热点组件还用于:
提取所述目标访问日志中的访问URL和存储URL;
根据所述存储URL索引目标访问日志对应的目标资源;
根据所述访问URL计算每一条目标资源对应的目标访问日志的数量,得到所述目标资源的访问热度。
进一步地,所述热点组件还用于:
获取所述热点资源的访问URL;
根据所述访问URL将所述热点资源加载到所述第一CDN节点的本地缓存中。
进一步地,所述热点组件还用于:
将所述热点资源的访问热度以衰减因子为倍数进行衰减;
在衰减之后的访问热度低于热度阈值时,删除统计访问热度的数据结构。
本实施例的具体实现方案可以参见上述有关该方法实施例中的相关说明,此处不再赘述。
图4是根据另一示例性实施例示出的一种CDN缓存系统的结构示意图。
如图4所示,本实施例提供的系统包括:处理器41;用于存储处理器可执行指令的存储器42;其中,所述处理器被配置为:
接收客户端发送的请求;
判断所述第一CDN节点的本地缓存中是否存在所述请求对应的数据;
如果存在,则将所述请求对应的数据返回给所述客户端;
如果不存在,则将所述请求重定向到第二CDN节点;
其中,所述第一CDN节点的本地缓存中的数据为预先确定的热点数据;
所述第二CDN节点的配置高于所述第一CDN节点的配置。
进一步地,所述处理器还被配置为:
读取缓存访问日志,并对读取的缓存访问日志进行过滤,得到目标访问日志;
统计所述目标访问日志对应的目标资源的访问热度,并根据访问热度对所述目标资源进行排序;
根据排序后的目标资源确定热点资源;
加载所述热点资源到所述第一CDN节点的本地缓存中;
对所述热点资源的访问进行热度衰减。
进一步地,所述处理器还被配置为:
根据预设的过滤策略,对读取的缓存访问日志进行过滤,所述过滤策略包括如下项中的至少一项:
过滤掉非HTTP302响应的日志;
时间过滤;
请求域名过滤;
文件大小过滤。
进一步地,所述处理器还被配置为:
提取所述目标访问日志中的访问URL和存储URL;
根据所述存储URL索引目标访问日志对应的目标资源;
根据所述访问URL计算每一条目标资源对应的目标访问日志的数量,得到所述目标资源的访问热度。
进一步地,所述处理器还被配置为:
获取所述热点资源的访问URL;
根据所述访问URL将所述热点资源加载到所述第一CDN节点的本地缓存中。
进一步地,所述处理器还被配置为:
将所述热点资源的访问热度以衰减因子为倍数进行衰减;
在衰减之后的访问热度低于热度阈值时,删除统计访问热度的数据结构。
进一步地,所述处理器还被配置为:
定时删除本地缓存中的冷数据;
所述冷数据是加载到本地缓存中的超过预设时间长度的资源。
关于上述实施例中的系统,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本申请的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对资源信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种CDN缓存方法,应用于第一CDN节点,其特征在于,包括:
接收客户端发送的请求;
判断所述第一CDN节点的本地缓存中是否存在所述请求对应的数据;
如果存在,则将所述请求对应的数据返回给所述客户端;
如果不存在,则将所述请求重定向到第二CDN节点;
其中,所述第一CDN节点的本地缓存中的数据为预先确定的热点数据;
所述第二CDN节点的配置高于所述第一CDN节点的配置。
2.根据权利要求1所述的方法,其特征在于,还包括:
读取缓存访问日志,并对读取的缓存访问日志进行过滤,得到目标访问日志;
统计所述目标访问日志对应的目标资源的访问热度,并根据访问热度对所述目标资源进行排序;
根据排序后的目标资源确定热点资源;
加载所述热点资源到所述第一CDN节点的本地缓存中;
对所述热点资源的访问进行热度衰减。
3.根据权利要求2所述的方法,其特征在于,所述对读取的缓存访问日志进行过滤,包括:
根据预设的过滤策略,对读取的缓存访问日志进行过滤,所述过滤策略包括如下项中的至少一项:
过滤掉非HTTP302响应的日志;
时间过滤;
请求域名过滤;
文件大小过滤。
4.根据权利要求2所述的方法,其特征在于,所述统计所述目标访问日志对应的目标资源的访问热度,包括:
提取所述目标访问日志中的访问URL和存储URL;
根据所述存储URL索引目标访问日志对应的目标资源;
根据所述访问URL计算每一条目标资源对应的目标访问日志的数量,得到所述目标资源的访问热度。
5.根据权利要求2所述的方法,其特征在于,所述加载所述热点资源到所述第一CDN节点的本地缓存中,包括:
获取所述热点资源的访问URL;
根据所述访问URL将所述热点资源加载到所述第一CDN节点的本地缓存中。
6.根据权利要求2所述的方法,其特征在于,所述对所述热点资源的访问进行热度衰减,包括:
将所述热点资源的访问热度以衰减因子为倍数进行衰减;
在衰减之后的访问热度低于热度阈值时,删除统计访问热度的数据结构。
7.根据权利要求1所述的方法,其特征在于,还包括:
定时删除本地缓存中的冷数据;
所述冷数据是加载到本地缓存中的超过预设时间长度的资源。
8.一种CDN缓存系统,应用于第一CDN节点,其特征在于,包括:缓存组件,所述缓存组件用于:
接收客户端发送的请求;
判断所述第一CDN节点的本地缓存中是否存在所述请求对应的数据;
如果存在,则将所述请求对应的数据返回给所述客户端;
如果不存在,则将所述请求重定向到第二CDN节点;
其中,所述第一CDN节点的本地缓存中的数据为预先确定的热点数据;
所述第二CDN节点的配置高于所述第一CDN节点的配置。
9.根据权利要求8所述的系统,其特征在于,还包括:热点组件,所述热点组件用于:
读取缓存访问日志,并对读取的缓存访问日志进行过滤,得到目标访问日志;
统计所述目标访问日志对应的目标资源的访问热度,并根据访问热度对所述目标资源进行排序;
根据排序后的目标资源确定热点资源;
加载所述热点资源到所述第一CDN节点的本地缓存中;
对所述热点资源的访问进行热度衰减。
10.根据权利要求8所述的系统,其特征在于,还包括:删除组件,所述删除组件用于:
定时删除本地缓存中的冷数据;
所述冷数据是加载到本地缓存中的超过预设时间长度的资源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810958734.9A CN109167828A (zh) | 2018-08-22 | 2018-08-22 | Cdn缓存方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810958734.9A CN109167828A (zh) | 2018-08-22 | 2018-08-22 | Cdn缓存方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109167828A true CN109167828A (zh) | 2019-01-08 |
Family
ID=64896462
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810958734.9A Pending CN109167828A (zh) | 2018-08-22 | 2018-08-22 | Cdn缓存方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109167828A (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109819039A (zh) * | 2019-01-31 | 2019-05-28 | 网宿科技股份有限公司 | 一种文件获取方法、文件存储方法、服务器及存储介质 |
CN109981408A (zh) * | 2019-03-26 | 2019-07-05 | 网宿科技股份有限公司 | 一种cdn服务器离线测试的方法及装置、系统 |
CN110233892A (zh) * | 2019-06-12 | 2019-09-13 | 湖南快乐阳光互动娱乐传媒有限公司 | Cdn热点资源处理方法、系统及全局热片调度系统 |
CN110430286A (zh) * | 2019-08-30 | 2019-11-08 | 杭州领智云画科技有限公司 | Cdn系统中获取资源的方法、装置、设备及存储介质 |
CN111064713A (zh) * | 2019-02-15 | 2020-04-24 | 腾讯科技(深圳)有限公司 | 一种分布式系统中的节点控制方法和相关装置 |
CN111131864A (zh) * | 2019-12-31 | 2020-05-08 | 聚好看科技股份有限公司 | 数据传输方法、装置及系统 |
CN111225279A (zh) * | 2020-01-06 | 2020-06-02 | 浙江云诺通信科技有限公司 | 一种基于宽带电视cdn智能调度算法 |
CN111654711A (zh) * | 2020-06-17 | 2020-09-11 | 三星电子(中国)研发中心 | 视频播放控制方法、视频播放方法及其装置 |
CN111736758A (zh) * | 2019-03-25 | 2020-10-02 | 贵州白山云科技股份有限公司 | 一种持久缓存的设置方法、装置、设备及介质 |
CN112448984A (zh) * | 2019-09-02 | 2021-03-05 | 北京新唐思创教育科技有限公司 | 资源传输方法、电子设备及计算机存储介质 |
CN112491939A (zh) * | 2019-09-12 | 2021-03-12 | 上海哔哩哔哩科技有限公司 | 多媒体资源调度方法及系统 |
CN113760178A (zh) * | 2021-01-29 | 2021-12-07 | 北京京东拓先科技有限公司 | 缓存数据处理方法、装置、电子设备和计算机可读介质 |
CN113986148A (zh) * | 2021-12-27 | 2022-01-28 | 苏州浪潮智能科技有限公司 | 一种数据读取方法、装置及相关设备 |
CN114827159A (zh) * | 2022-03-31 | 2022-07-29 | 北京百度网讯科技有限公司 | 网络请求路径优化方法、装置、设备和存储介质 |
CN116708455A (zh) * | 2023-02-03 | 2023-09-05 | 天翼云科技有限公司 | 资源获取方法及装置、可读存储介质及电子设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101026741A (zh) * | 2006-02-21 | 2007-08-29 | 上海贝尔阿尔卡特股份有限公司 | 一种视频点播频度处理方法及其装置 |
CN101039329A (zh) * | 2006-12-28 | 2007-09-19 | 中兴通讯股份有限公司 | 基于媒体交付的网络电视系统的媒体交付系统 |
US20120198070A1 (en) * | 2011-02-01 | 2012-08-02 | Limellight Networks, Inc. | Content Replication Workflow in Content Delivery Networks |
CN103414747A (zh) * | 2013-07-11 | 2013-11-27 | 广东工业大学 | 一种自适应流媒体缓存方法 |
CN103927265A (zh) * | 2013-01-04 | 2014-07-16 | 深圳市龙视传媒有限公司 | 一种内容分级存储装置、内容获取方法及内容获取装置 |
CN104853384A (zh) * | 2015-05-14 | 2015-08-19 | 南京邮电大学 | 第五代移动通信系统中一种基于流行度的内容缓存方法 |
CN105072172A (zh) * | 2015-07-31 | 2015-11-18 | 网宿科技股份有限公司 | 一种基于内容分发网络的热点统计及推送方法及系统 |
-
2018
- 2018-08-22 CN CN201810958734.9A patent/CN109167828A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101026741A (zh) * | 2006-02-21 | 2007-08-29 | 上海贝尔阿尔卡特股份有限公司 | 一种视频点播频度处理方法及其装置 |
CN101039329A (zh) * | 2006-12-28 | 2007-09-19 | 中兴通讯股份有限公司 | 基于媒体交付的网络电视系统的媒体交付系统 |
US20120198070A1 (en) * | 2011-02-01 | 2012-08-02 | Limellight Networks, Inc. | Content Replication Workflow in Content Delivery Networks |
CN103927265A (zh) * | 2013-01-04 | 2014-07-16 | 深圳市龙视传媒有限公司 | 一种内容分级存储装置、内容获取方法及内容获取装置 |
CN103414747A (zh) * | 2013-07-11 | 2013-11-27 | 广东工业大学 | 一种自适应流媒体缓存方法 |
CN104853384A (zh) * | 2015-05-14 | 2015-08-19 | 南京邮电大学 | 第五代移动通信系统中一种基于流行度的内容缓存方法 |
CN105072172A (zh) * | 2015-07-31 | 2015-11-18 | 网宿科技股份有限公司 | 一种基于内容分发网络的热点统计及推送方法及系统 |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109819039A (zh) * | 2019-01-31 | 2019-05-28 | 网宿科技股份有限公司 | 一种文件获取方法、文件存储方法、服务器及存储介质 |
CN109819039B (zh) * | 2019-01-31 | 2022-04-19 | 网宿科技股份有限公司 | 一种文件获取方法、文件存储方法、服务器及存储介质 |
CN111064713B (zh) * | 2019-02-15 | 2021-05-25 | 腾讯科技(深圳)有限公司 | 一种分布式系统中的节点控制方法和相关装置 |
CN111064713A (zh) * | 2019-02-15 | 2020-04-24 | 腾讯科技(深圳)有限公司 | 一种分布式系统中的节点控制方法和相关装置 |
CN111736758A (zh) * | 2019-03-25 | 2020-10-02 | 贵州白山云科技股份有限公司 | 一种持久缓存的设置方法、装置、设备及介质 |
CN111736753A (zh) * | 2019-03-25 | 2020-10-02 | 贵州白山云科技股份有限公司 | 一种持久缓存方法、装置和计算机设备 |
CN109981408B (zh) * | 2019-03-26 | 2021-08-03 | 网宿科技股份有限公司 | 一种cdn服务器离线测试的方法及装置、系统 |
CN109981408A (zh) * | 2019-03-26 | 2019-07-05 | 网宿科技股份有限公司 | 一种cdn服务器离线测试的方法及装置、系统 |
CN110233892A (zh) * | 2019-06-12 | 2019-09-13 | 湖南快乐阳光互动娱乐传媒有限公司 | Cdn热点资源处理方法、系统及全局热片调度系统 |
CN110430286A (zh) * | 2019-08-30 | 2019-11-08 | 杭州领智云画科技有限公司 | Cdn系统中获取资源的方法、装置、设备及存储介质 |
CN112448984A (zh) * | 2019-09-02 | 2021-03-05 | 北京新唐思创教育科技有限公司 | 资源传输方法、电子设备及计算机存储介质 |
CN112491939A (zh) * | 2019-09-12 | 2021-03-12 | 上海哔哩哔哩科技有限公司 | 多媒体资源调度方法及系统 |
CN112491939B (zh) * | 2019-09-12 | 2022-12-27 | 上海哔哩哔哩科技有限公司 | 多媒体资源调度方法及系统 |
CN111131864A (zh) * | 2019-12-31 | 2020-05-08 | 聚好看科技股份有限公司 | 数据传输方法、装置及系统 |
CN111225279B (zh) * | 2020-01-06 | 2022-03-22 | 浙江云诺通信科技有限公司 | 一种基于宽带电视cdn智能调度算法 |
CN111225279A (zh) * | 2020-01-06 | 2020-06-02 | 浙江云诺通信科技有限公司 | 一种基于宽带电视cdn智能调度算法 |
CN111654711A (zh) * | 2020-06-17 | 2020-09-11 | 三星电子(中国)研发中心 | 视频播放控制方法、视频播放方法及其装置 |
CN113760178A (zh) * | 2021-01-29 | 2021-12-07 | 北京京东拓先科技有限公司 | 缓存数据处理方法、装置、电子设备和计算机可读介质 |
CN113986148A (zh) * | 2021-12-27 | 2022-01-28 | 苏州浪潮智能科技有限公司 | 一种数据读取方法、装置及相关设备 |
CN113986148B (zh) * | 2021-12-27 | 2022-03-22 | 苏州浪潮智能科技有限公司 | 一种数据读取方法、装置及相关设备 |
CN114827159A (zh) * | 2022-03-31 | 2022-07-29 | 北京百度网讯科技有限公司 | 网络请求路径优化方法、装置、设备和存储介质 |
CN114827159B (zh) * | 2022-03-31 | 2023-11-21 | 北京百度网讯科技有限公司 | 网络请求路径优化方法、装置、设备和存储介质 |
CN116708455A (zh) * | 2023-02-03 | 2023-09-05 | 天翼云科技有限公司 | 资源获取方法及装置、可读存储介质及电子设备 |
CN116708455B (zh) * | 2023-02-03 | 2024-01-05 | 天翼云科技有限公司 | 资源获取方法及装置、可读存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109167828A (zh) | Cdn缓存方法和系统 | |
CN103338249B (zh) | 缓存方法及装置 | |
CN104702625B (zh) | 一种cdn网络中访问请求调度方法及装置 | |
AU2013209728B2 (en) | System and method for improving access to search results | |
CN104794064B (zh) | 一种基于区域热度的缓存管理方法 | |
CN105608115A (zh) | 数据获取方法与装置 | |
CN109241022A (zh) | 一种基于蓝光存储的档案管理系统及其蚁群搜索算法 | |
CN103916474B (zh) | 缓存时间的确定方法、装置及系统 | |
CN106339398A (zh) | 一种网页页面的预读取方法、装置及智能终端设备 | |
CN104104717A (zh) | 投放渠道数据统计方法及装置 | |
CN107103068A (zh) | 业务缓存的更新方法及装置 | |
CN107368608A (zh) | 基于arc替换算法的hdfs小文件缓存管理方法 | |
CN109359263B (zh) | 一种用户行为特征提取方法及系统 | |
EP2418809A1 (en) | Method and apparatus for processing and updating service contents in a distributed file system | |
CN103902660B (zh) | 机群文件系统中通过readdir++预取文件布局的系统及其方法 | |
CN102307234A (zh) | 基于移动终端的资源检索方法 | |
CN110191168A (zh) | 在线业务数据的处理方法、装置、计算机设备和存储介质 | |
CN106302595A (zh) | 一种对服务器进行健康检查的方法及设备 | |
CN104239353B (zh) | 一种web分类控制和日志审计的方法 | |
CN103067479A (zh) | 一种基于文件冷热的网盘同步方法及系统 | |
CN108073723A (zh) | 一种用于分布式集群存储上的文件自精简方法及设备 | |
CN109634753A (zh) | 切换浏览器内核的数据处理方法、装置、终端和存储介质 | |
CN106326280A (zh) | 数据处理方法、装置及系统 | |
CN106331172A (zh) | 一种应用于内容分发网络的资源检测方法及装置 | |
CN112861031B (zh) | Cdn中url刷新方法、装置、设备以及cdn节点 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190108 |
|
RJ01 | Rejection of invention patent application after publication |