用于确定CDN节点磁盘数量的方法及系统技术方案

技术编号:13899534 阅读:73 留言:0更新日期:2016-10-25 12:43
本公开提供了一种用于确定CDN节点磁盘数量的方法,包括:分析用户访问日志以至少确定所有被访问文件及其大小;设定约束条件:所有被缓存了的每个被访问文件的大小之和不大于预定磁盘空间,预定磁盘空间取多个空间值;基于每次访问的被缓存了的被访问文件的大小之和与每次访问的被访问文件的大小之和的比值度量缓存命中率;再结合约束条件确定对应于多个空间值的多个最大缓存命中率;确定多个最大缓存命中率中的取值最大所对应的空间值以确定磁盘数量;相应的还提供一种确定CDN节点磁盘数量的系统;本公开通过分析用户的访问日志以量化的方法确定了CDN节点需要布设的磁盘的个数,使得最终得到的CDN节点具有更加合理存储空间。

【技术实现步骤摘要】

本公开涉及CDN
,特别涉及一种用于确定CDN节点磁盘数量的方法及系统
技术介绍
CDN(Content Delivery Network,内容分发网络)是一种通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络。CDN能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上,其目的是能够选择离用户相对较近的CDN节点向用户发送用户所需的内容,缓解网络拥挤的状况,提高网站的响应速度,而每一个CDN节点都包括了多个磁盘,用户所访问的内容就存储在这些磁盘中,因此一个CDN节点所布设的磁盘的多少,直接决定这其能够存储的被访问内容的多少,以为用户提供更优质的服务质量,然而考虑到购置磁盘的成本问题每一个CDN节点又不能盲目的过多的布设磁盘。现有技术中在新建一个CDN节点,或者对一个已有的CDN节点进行扩容时,只是通过工程师的经验来进行布设的。然而由于每一个工程师的经验和阅历是不相同的,因此仅仅更具经验来布设CDN节点中磁盘的个数,最终得到的CDN节点并不能为用户提供优质的服务,存在的问题在于,要么布设的磁盘过多造成资源的浪费以及成本的增高,要么布设的磁盘过少没有足够的空间存储需要缓存的访问内容,从而不能为用户直接提供访问内容而造成频频的回源,影响用户体验。
技术实现思路
本公开提供一种用于确定CDN节点磁盘数量的方法及系统,以至少解决上述技术问题之一。一方面,本公开提供一种用于确定CDN节点磁盘数量的方法,包括:分析用户访问日志以至少确定所有被访问文件和每个被访问文件的大小;设定约束条件:所有被缓存了的每个被访问文件的大小之和不大于预定磁盘空间,所述预定磁盘空间依次取递增的多个空间值;基于每次访问的被缓存了的被访问文件的大小之和与每次访问的被访问文件的大小之和的比值来度量缓存命中率;根据所述约束条件和基于每次访问的被缓存了的被访问文件的大小之和与每次访问的被访问文件的大小之和的比值对缓存命中率的度量确定对应于所述多个空间值的多个最大缓存命中率;确定所述多个最大缓存命中率中的取值最大的最大缓存命中率所对应的所述预定磁盘空间的空间值以确定磁盘数量。另方面,本公开还提供一种用于确定CDN节点磁盘数量的系统,包括:日志分析模块,用于分析用户访问日志以至少确定所有被访问文件和每个被访问文件的大小;约束条件设定模块,用于设定约束条件:所有被缓存了的每个被访问文件的大小之和不大于预定磁盘空间,所述预定磁盘空间依次取递增的多个空间值;缓存命中率度量模块,用于基于每次访问的被缓存了的被访问文件的大小之和与每次访问的被访问文件的大小之和的比值来度量缓存命中率;缓存命中率确定模块,用于根据所述约束条件和基于每次访问的被缓存
了的被访问文件的大小之和与每次访问的被访问文件的大小之和的比值对缓存命中率的度量确定对应于所述多个空间值的多个最大缓存命中率;磁盘数量确定模块,用于确定所述多个最大缓存命中率中的取值最大的最大缓存命中率所对应的所述预定磁盘空间的空间值以确定磁盘数量。本公开的实施例的方法和系统通过分析用户的访问日志,以在采取不同磁盘空间大小的情况下确定最大缓存命中率的方法来量化的确定了CDN节点需要布设的磁盘的个数,使得最终得到的CDN节点具有更加合理磁盘空间,既不浪费资源,又能尽可能多的缓存被访问内容以最大程度的满足用户的访问请求。附图说明为了更清楚地说明本公开实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本公开的用于确定CDN节点磁盘数量的方法的一实施例的流程图;图2为本公开的用于确定CDN节点磁盘数量的方法的另一实施例的流程图;图3为本公开的用于确定CDN节点磁盘数量的系统的一实施例的示意图;图4为本公开的用于确定CDN节点磁盘数量的系统的另一实施例的示意图。具体实施例为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”,不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。如图1所示,本公开的一实施例的用于确定CDN节点磁盘数量的方法,其包括:分析用户访问日志以至少确定所有被访问文件和每个被访问文件的大小;设定约束条件:所有被缓存了的每个被访问文件的大小之和不大于预定磁盘空间,所述预定磁盘空间依次取递增的多个空间值;基于每次访问的被缓存了的被访问文件的大小之和与每次访问的被访问文件的大小之和的比值来度量缓存命中率;根据所述约束条件和基于每次访问的被缓存了的被访问文件的大小之和与每次访问的被访问文件的大小之和的比值对缓存命中率的度量确定对应于
所述多个空间值的多个最大缓存命中率;确定所述多个最大缓存命中率中的取值最大的最大缓存命中率所对应的所述预定磁盘空间的空间值以确定磁盘数量。在本实施例中通过分析用户的访问日志,以在采取不同磁盘空间大小的情况下确定最大缓存命中率的方法来量化的确定了CDN节点需要布设的磁盘的个数,使得最终得到的CDN节点具有更加合理磁盘空间,既不浪费资源,又能尽可能多的缓存被访问内容以最大程度的满足用户的访问请求。在本公开的另一实施例的用于确定CDN节点磁盘数量的方法中,约束条件为:a1X1+a2X2……+amXm≤D,其中Xk为被访问文件的大小,ak取值1或者0,当ak取值1时表明大小为Xi的被访问文件已被缓存,当ak取值0时表明大小为Xi的被访问文件没有被缓存,m为被访问文件的个数,k取1至m的正整数,D为预定磁盘空间。本实施例中的预定磁盘空间D依次取一系列呈递增趋势的多个空间值,每取一个空间值就可以确定出至少一组满足上述约束条件的参数a1至am,即确定出了至少一种缓存被访问文件的方法,每一种缓存方法中根据确定的参数a1至am的取值都可以确定下需要缓存的被请求文件,例如,被访问文件包括Y1至Y5时,且被访问文件Y1大小为X1、被访问文件Y2大小为X2、被访问文件Y3大小为X3、被访问文件Y4大小为X4、被访问文件Y5大小为X5,当预定磁盘空间D取某一个值,且满足上述约束条件的情况下确定的参数a1至a5分别取值为(1、0、1、1、0)时(当然,还可能存在其它的取值方式),则表示只需缓存被访问文件Y1、Y3本文档来自技高网
...

【技术保护点】
一种用于确定CDN节点磁盘数量的方法,包括:分析用户访问日志以至少确定所有被访问文件和每个被访问文件的大小;设定约束条件:所有被缓存了的每个被访问文件的大小之和不大于预定磁盘空间,所述预定磁盘空间依次取递增的多个空间值;基于每次访问的被缓存了的被访问文件的大小之和与每次访问的被访问文件的大小之和的比值来度量缓存命中率;根据所述约束条件和基于每次访问的被缓存了的被访问文件的大小之和与每次访问的被访问文件的大小之和的比值对缓存命中率的度量确定对应于所述多个空间值的多个最大缓存命中率;确定所述多个最大缓存命中率中的取值最大的最大缓存命中率所对应的所述预定磁盘空间的空间值以确定磁盘数量。

【技术特征摘要】
1.一种用于确定CDN节点磁盘数量的方法,包括:分析用户访问日志以至少确定所有被访问文件和每个被访问文件的大小;设定约束条件:所有被缓存了的每个被访问文件的大小之和不大于预定磁盘空间,所述预定磁盘空间依次取递增的多个空间值;基于每次访问的被缓存了的被访问文件的大小之和与每次访问的被访问文件的大小之和的比值来度量缓存命中率;根据所述约束条件和基于每次访问的被缓存了的被访问文件的大小之和与每次访问的被访问文件的大小之和的比值对缓存命中率的度量确定对应于所述多个空间值的多个最大缓存命中率;确定所述多个最大缓存命中率中的取值最大的最大缓存命中率所对应的所述预定磁盘空间的空间值以确定磁盘数量。2.根据权利要求1所述的方法,其中,所述约束条件为:a1X1+a2X2……+amXm≤D,其中Xk为被访问文件的大小,ak取值1或者0,当ak取值1时表明大小为Xi的被访问文件已被缓存,当ak取值0时表明大小为Xi的被访问文件没有被缓存,m为被访问文件的个数,k取1至m的正整数,D为预定磁盘空间。3.根据权利要求2所述的方法,其中,还包括:分析用户访问日志以确定每个被访问文件的被访问次数;所述多个最大缓存命中率由所述约束条件和以下公式确定:H=(∑akbkXk)/(∑bkXk),(k取值1至m的正整数);其中,bk为大小为Xk的被访问文件的被访问次数,H为缓存命中率。4.根据权利要求1-3任一项所述的方法,其中,所述确定所述多个最大缓存命中率中的取值最大的最大缓存命中率所对应的所述预定磁盘空间的空间值以确定磁盘数量为:从确定的多个最大缓存命中率中选出取值最大的最大缓存命中率;为确定的取值最大的最大缓存命中率所对应的预定磁盘空间的空间值加权后除以单个磁盘的大小并取模为磁盘数量。5.根据权利要求4所述的方法,其中,所述预定磁盘空间所取的空间值为单个磁盘大小的整数倍。6.一种用于确定CDN节点磁盘数量的系统,包括:日志...

【专利技术属性】
技术研发人员:李洪福马宙
申请(专利权)人:乐视控股北京有限公司乐视云计算有限公司
类型:发明
国别省市:北京;11

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

1