一种在内容分发网络中进行内容管理的方法、装置及系统制造方法及图纸

技术编号:10813171 阅读:110 留言:0更新日期:2014-12-24 18:00
本发明专利技术涉及一种在内容分发网络中进行内容管理的方法及装置,上述方法包括:监测边缘节点的已用存储空间是否超出预定的阈值,若是则执行以下步骤:从一个索引系统处获取需保护文件的集合U1;对该边缘节点进行目录遍历以获取所有最后修改时间与当前时间之间相差超过预定值的文件的集合U0;获取待删除文件的集合U2=U0-U1;以及从该边缘节点内删除U2内的每个文件。根据上述的方法及装置,在内容分发网络中进行内容管理具有硬件开销低、速度快,且不影响服务可用率、不引起服务质量下降的优点。

【技术实现步骤摘要】
一种在内容分发网络中进行内容管理的方法、装置及系统
本专利技术涉及内容分发网络(ContentDeliveryNetwork,CDN),特别涉及一种在内容分发网络中进行内容管理的方法、装置及系统。
技术介绍
内容分发网络的目的是通过在现有的互联网中增加一层新的网络架构,将热点资源或用户所需的资源分发到最接近用户的边缘节点上,使用户可以就近取得所需的内容,解决互联网网络拥挤的状况,提高用户访问资源的响应速度。图1所示为一个典型的CDN架构示意图,其中,DC表示数据中心,AC表示区域中心,OC表示边缘节点。当用户请求在距用户网络拓扑距离最近的OC节点命中资源时,由OC直接提供服务;若不命中,则OC节点中的Web服务器返回HTTP302回复,并把用户重定向到DC或AC,这个过程称作一次“回源”。在一个CDN系统中,提高服务质量(QualityofService,QoS)的一个重要手段就是尽可能降低回源的概率。但是,如果持续不断地把资源分发到CDN边缘节点,那么由于其存储容量有限,一段时间之后必然达到存储容量的极限而导致服务质量下降。另外,随着时间的推移,有些热点数据逐渐变成冷而失去在CDN边缘节点存储的必要。所以就必须维持边缘节点的存储量不能超过一特定阈值,或者在达到某阈值后执行主动淘汰。另外,一些新业务的上线等场景又要求CDN边缘节点具有更强的主动淘汰的能力。一个最直接的想法是把OC机房(即CDN的边缘节点)里所有文件按最后访问时间排序,或按类似最近最少使用(LeastRecentlyUsed,LRU)的规则维护一个所有文件信息的LRU链表,执行淘汰时,删除最后访问时间最早的或访问链表LRU端的一个或若干个文件。但是,一直维护一个机房所有文件的信息所费内存空间比较大。而前一种方案每有一次用户访问请求都需要付出O(logn)的调整全局数据结构的额外代价;后一种方案虽然是O(1)的,但如若一旦程序意外崩溃或者有特殊需要人为重启,就要付出O(1)的时间来重建LRU链,但此时的LRU链只具有不能表征访问情况的临时信息,且会对淘汰过程产生滞后影响。为了避免上述方案的开销,一个粗略的替代实现方案是利用文件系统中的atime属性。atime表示某文件最后一次被访问的时间戳,如果开启atime,那么只需要遍历文件系统中的所有文件,并且在此过程中删除早于一个既定时刻的所有文件即可完成类似于LRU方式的淘汰。然而,而系统更新atime所带来的开销却是巨大的。因为系统每访问一次某个文件,就要对这个文件更新一个新的atime时间值。这里所说的访问,并不是从用户角度来看的打开一个文件,而是系统底层的每一次打开(open)和读取(read)等操作。每对文件进行一次读操作,都要引起一个对磁盘的写操作,即使我们要读的内容已经存在于内存的页缓存(PageCache)中,还是要对磁盘进行一个写操作。这样引起的开销确实是巨大的,这些写操作会使磁盘更多的处于忙碌状态,这对系统性能(因为磁盘在完成一个写操作的时候会暂时阻止其他的写操作)以及电量消耗都是不利的。所以在实际互联网服务系统中,atime通常是关闭的。虽然Linux2.6.20和2.6.24两个版本的内核分别针对atime做了一些延迟更新的策略,但其在提供海量文件满足海量并发用户的访问需求的系统中所能起到的作用甚微。所以就需要设计一种开销低、速度快,且不影响服务可用率、不引起服务质量下降的高效淘汰策略。
技术实现思路
有鉴于此,有必要提供一种在内容分发网络中进行内容管理的方法、装置及系统,其硬件开销低、速度快,且不影响服务可用率、不引起服务质量下降。一种在内容分发网络中进行内容管理的方法,包括:监测边缘节点的已用存储空间是否超出预定的阈值,若是则执行以下步骤:从一个索引系统处获取需保护文件的集合U1;对该边缘节点进行目录遍历以获取所有最后修改时间与当前时间之间相差超过预定值的文件的集合U0;获取待删除文件的集合U2=U0-U1;以及从该边缘节点内删除U2内的每个文件。一种在内容分发网络中进行内容管理的装置,包括:监测模块,用于监测边缘节点的已用存储空间是否超出预定的阈值,若是则调用文件删除模块;该文件删除模块包括:第一获取单元,用于从一个索引系统处获取需保护文件的集合U1;目录遍历单元,用于对该边缘节点进行目录遍历以获取所有最后修改时间与当前时间之间相差超过预定值的文件的集合U0;第二获取单元,用于获取待删除文件的集合U2=U0-U1;以及文件删除单元,用于从该边缘节点内删除U2内的每个文件。一种在内容分发网络中进行内容管理的系统,包括:主控服务器及索引服务器;该主控服务器用于监测该内容分发网络的边缘节点的已用存储空间是否超出预定的阈值,若是则从该索引服务器处获取需保护文件的集合U1;对该边缘节点进行目录遍历以获取所有最后修改时间与当前时间之间相差超过预定值的文件的集合U0;获取待删除文件的集合U2=U0-U1;从该边缘节点内删除U2内的每个文件;该索引服务器用于根据请求返回该需保护文件的集合U1。上述的在内容分发网络中进行内容管理的方法、装置及系统具有以下优点:1.不需要在CDN的边缘节点维护资源的全局索引,更不需要按访问频度等信息来对资源进行排序,保持CDN边缘节点逻辑功能设计的最简单化,减少边缘节点的硬件资源消耗,从而提升边缘节点的运行效率。2.CDN边缘节点中的每台网络服务器和存储服务器均不需要开启atime,这样防止了每对文件进行一次读操作,都要引起一个对某磁盘块的写操作。不仅降低了不必要的磁盘写,提升了并发服务性能,而且降低了能耗。为让本专利技术的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。附图说明图1所示为一个典型的CDN架构示意图。图2为一个视频网站的访问情况示意图。图3为一个视频网站的访问请求的累积分布函数。图4为若干影片票房收入和公映时间的关系示意图。图5至图7分别为三种不同的资源访问模式示意图。图8为本专利技术实施例提供的在内容分发网络中进行内容管理的方法及装置的运行环境示意图。图9为Unix/Linux文件系统中文件树的示意图。图10为索引节点的内容示意图。图11为目录项的结构示意图。图12为一个文件相关的i-节点、目录项和数据块的示意图。图13为文件路径解析过程的示意图。图14为仅包含两个媒体文件的目录项所在的块的示意图。图15为一种目录遍历的流程示意图。图16为图15的目录遍历的部分步骤流程示意图。图17为另一种目录遍历的流程示意图。图18为第一实施例提供的在内容分发网络中进行内容管理的方法流程图。图19为第二实施例提供的在内容分发网络中进行内容管理的方法流程图。图20为第三实施例提供的在内容分发网络中进行内容管理的方法流程图。图21为文件删除操作时目录项的变化示意图。图22为第四实施例提供的在内容分发网络中进行内容管理的方法流程图。图23至图27分别为全部资源、UGC资源、新闻、音乐、及影视等各类资源的302回源统计示意图。图28为第五实施例提供的在内容分发网络中进行内容管理的装置的结构框图。图29为代理服务器的结构框图。图30为第六实施例提供的在内容分发网络中进行内容管理的系统的结构框图。具体实施方式为更进一步本文档来自技高网
...

【技术保护点】
一种在内容分发网络中进行内容管理的方法,其特征在于,包括:监测边缘节点的已用存储空间是否超出预定的阈值,若是则执行以下步骤:从一个索引系统处获取需保护文件的集合U1;对该边缘节点进行目录遍历以获取所有最后修改时间与当前时间之间相差超过预定值的文件的集合U0;获取待删除文件的集合U2=U0‑U1;以及从该边缘节点内删除U2内的每个文件。

【技术特征摘要】
1.一种在内容分发网络中进行内容管理的方法,其特征在于,包括:监测边缘节点的已用存储空间是否超出预定的阈值,若是则执行以下步骤:向代理服务器发送淘汰预警信号;该代理服务器根据该淘汰预警信号向索引系统发送获取文件请求并相应获取需保护文件的集合U1;以及接收该代理服务器返回的该需保护文件的集合U1;对该边缘节点进行目录遍历以获取所有最后修改时间与当前时间之间相差超过预定值的文件的集合U0;获取待删除文件的集合U2=U0-U1;以及从该边缘节点内删除U2内的每个文件。2.如权利要求1所述的在内容分发网络中进行内容管理的方法,其特征在于,该需保护文件的集合U1包括:在过去第一预定时间内至少存在某天访问次数大于1的文件集合、过去第二预定时间内上传但未发布的文件的集合、以及所有需要永久保存的文件的集合。3.如权利要求2所述的在内容分发网络中进行内容管理的方法,其特征在于,与该代理服务器之间的网络传输采用加密方式进行处理。4.如权利要求2所述的在内容分发网络中进行内容管理的方法,其特征在于,还包括:接收来自该代理服务器的目录遍历请求及该预定值,对该边缘节点进行目录遍历以获取所有最后修改时间与当前时间之间相差超过预定值的文件的集合U0是根据来该目录遍历请求进行的。5.如权利要求2所述的在内容分发网络中进行内容管理的方法,其特征在于,还包括:该代理服务器将该第一预定时间及第二预定时间发送至该索引系统。6.如权利要求2所述的在内容分发网络中进行内容管理的方法,其特征在于,还包括:在该代理服务器中根据用户输入获取该预定值或者读取预先的设定信息以获取该预定值。7.如权利要求1所述的在内容分发网络中进行内容管理的方法,其特征在于,还包括:接收一个客户端发送的文件,以及将接收到的文件存储在连接至该边缘节点的存储器内;该文件的存储路径为:/DATAx/(CHANNEL/)y/z/filename;其中DATAx表示索引号为x的存储器的根目录,CHANNEL表示频道名,且CHANNEL子目录可选,其后下一级子目录为y,filename为该文件的文件名,且x、y、z满足以下条件:N表示边缘节点的数目,hash1与hash2为两个不同的哈希函数。8.如权利要求7所述的在内容分发网络中进行内容管理的方法,其特征在于,在对该边缘节点进行目录遍历之前还包括:通过网络文件系统将连接至该边缘节点的存储器内的文件挂载至一个虚拟路径下,该虚拟路径为:/data/k/(CHANNEL/)y/z/filename;其中,CHANNEL子目录可选,其后下一级子目录为y,k≤10000,且k与x之间为均匀的多对一映射关系。9.如权利要求7-8任一项所述的在内容分发网络中进行内容管理的方法,其特征在于,对该边缘节点进行目录遍历时采用广度优先遍历。10.如权利要求7-8任一项所述的在内容分发网络中进行内容管理的方法,其特征在于,对该边缘节点进行目录遍历时采用非递归遍历。11.如权利要求1所述的在内容分发网络中进行内容管理的方法,其特征在于,对该边缘节点进行目录遍历时,对于同一个存储器内的目录,其遍历过程串行进行,而不同的存储器的遍历过程并行进行。12.如权利要求1所述的在内容分发网络中进行内容管理的方法,其特征在于,对该边缘节点进行目录遍历的过程中还将遍历进程绑定至特定的处理器核心。13.如权利要求1所述的在内容分发网络中进行内容管理的方法,其特征在于,对该边缘节点进行目录遍历的结果按照索引节点、文件索引节点所在块号、或者文件目录项所在块号进行排序。14.一种在内容分发网络中进行内容管理的装置,其特征在于,包括:监测模块,用于监测边缘节点的已用存储空间是否超出预定的阈值,若是则调用文件删除模块;该文件删除模块包括:第一获取单元用于:向代理服务器发送淘汰预警信号;该代理服务器根据该淘汰预警信号向索引系统发送获取文件请求并相应获取需保护文件的集合U1;以及接收该代理服务器返回的该需保护文件的集合U1;目录遍历单元,用于对该边缘节点进行目录遍历以获取所有最后修改时间与当前时间之间相差超过预定值的文件的集合U0;第二获取单元,用于获取待删除文件的集合U2=U0-U1;以及文件删除单元,用于从该边缘节点内删除U2内的每个文件。15.如权利要求14所述的在内容分发网络中进行内容管理的装置,其特征在于,该需保护文件的集合U1包括:在过去第一预定时间内至少存在某天访问次数大于1的文件集合、过去第二预定时间内上传但未发布的文件的集合、以及所有需要永久保存的文件的集合。16.如权利要求15所述的在内容分发网络中进行内容管理的装置,其特征在于,与该代理服务器之间的网络传输采用加密方式进行处理。17.如权利要求15所述的在内容分发网络中进行内容管理的装置,其特征在于,该文件删除模块还包括:接收单元,用于接收来自该代理服务器的目录遍历请求及该预定值,该目录遍历单元是根据该目录遍历请求进行目录遍历操作。18.如权利要求15所述的在内容分发网络中进行内容管理的装置,其特征在于,该代理服务器还包括发送模块,用于将该第一预定时间及第二预定时间发送至该索引系统。19.如权利要求15所述的在内容分发网络中进行内容管理的装置,其特征在于,该代理服务器还包括获取模块,用于根据用户输入获取该预定值或者读取预先的设定信息以获取该预定值。20.如权利要求14所述的在内容分发网络中进行内容管理的装置,其特征在于,还包括:文件存储模块,用于接收一个客户端发送的文件,以及将接收到的文件存储在连接至该边缘节点的存储器内;该文件的存储路径为:/DATAx/(CHANNEL/)y/z/filename;其中DATAx表示...

【专利技术属性】
技术研发人员:庄奇东
申请(专利权)人:深圳市腾讯计算机系统有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1