书签 分享 收藏 举报 版权申诉 / 17

基于多级缓存模块的内容查询方法和装置.pdf

  • 上传人:1***
  • 文档编号:627344
  • 上传时间:2018-02-26
  • 格式:PDF
  • 页数:17
  • 大小:1.21MB
  • 摘要
    申请专利号:

    CN201410495975.6

    申请日:

    2014.09.25

    公开号:

    CN104217019A

    公开日:

    2014.12.17

    当前法律状态:

    实审

    有效性:

    审中

    法律详情:

    实质审查的生效IPC(主分类):G06F 17/30申请日:20140925|||公开

    IPC分类号:

    G06F17/30

    主分类号:

    G06F17/30

    申请人:

    中国人民解放军信息工程大学

    发明人:

    张建辉; 张校辉; 莫涵; 刘涛; 田铭; 申涓; 贺磊; 赵靓

    地址:

    450000 河南省郑州市科学大道62号

    优先权:

    专利代理机构:

    北京集佳知识产权代理有限公司 11227

    代理人:

    王宝筠

    PDF完整版下载: PDF下载
    内容摘要

    本发明实施例涉及一种基于多级缓存模块的内容查询方法和装置,所述多级缓存模块分别存储不同热度级别的内容,所述热度表示被查询概率,所述方法包括:接收用户端查询请求,所述请求携带目的内容标识;查询存储热度为最高级别的内容的缓存模块,若其中没有目的内容,则查询热度为次高级别的内容的缓存模块,以此类推,直到获得所述目的内容;将所述目的内容提供给用户端。在进行内容查询时,按照所存储内容的热度级别从高到低的顺序查询各级缓存模块,热度越高(即越热门)的内容存储位置越靠前,被查询的时间也越靠前,因此越容易被查找到。所以本发明提供的方案提高了目的内容的命中率,缩短了查询时间,提高了工作效率。

    权利要求书

    1.  一种基于多级缓存模块的内容查询方法,其特征在于,所述多级缓存模块分别存储不同热度级别的内容,所述热度表示被查询概率,所述方法包括:
    接收用户端查询请求,所述请求携带目的内容标识;
    查询存储热度为最高级别的内容的缓存模块,若其中没有目的内容,则查询热度为次高级别的内容的缓存模块,以此类推,直到获得所述目的内容;
    将所述目的内容提供给用户端。

    2.
      根据权利要求1所述的内容查询方法,其特征在于,还包括针对各级缓存模块中所存储的内容的热度预测过程,该过程包括:
    统计历史信息,以时间间隔T对内容对象i进行统计,记为V1,V2,……,Vn-1,Vn,以V(t)分别表示[0,T),[T,2T),…,[(n-1)T,nT),[nT,t)内的查询请求次数,并确定Fs=Vs/T,s=1,2,…,n,且以F(t)=V(t)/(t-nT)表示相应时间段的请求频率,则内容对象i在时刻t的热度可以表示为:
    Ai(t)=αF(t)+(1-α)(Fn+Fn-1+…+Fn-k+2+Fn-k+1)
    其中:
    α为权值参数,且0<α<1,K为滑动窗口的宽度,即所取的时间区间T的个数。

    3.
      根据权利要求2所述的内容查询方法,其特征在于,还包括:
    依据上述热度预测过程得到的各缓存模块中各内容对象的热度,更新各内容对象的存储位置。

    4.
      根据权利要求2或3所述的内容查询方法,其特征在于,所述热度预测过程在接收到用户端查询请求时启动。

    5.
      根据权利要求1所述的内容查询方法,其特征在于,在接收用户端查询请求后,进行解析确定业务类型,所述将所述目的内容提供给用户端为:将所述目的内容按照所述业务类型封装后发送给用户端。

    6.
      一种基于多级缓存模块的内容查询装置,其特征在于,所述多级缓存模块分别存储不同热度级别的内容,所述热度表示被查询概率,所述装置包 括:
    请求接收单元,用于接收用户端查询请求,所述请求携带目的内容标识;
    查询模块,用于查询存储热度为最高级别的内容的缓存模块,若其中没有目的内容,则查询热度为次高级别的内容的缓存模块,以此类推,直到获得所述目的内容;
    内容反馈单元,用于将所述目的内容提供给用户端。

    7.
      根据权利要求6所述的装置,其特征在于,还包括:
    用于对各级缓存模块中存储的内容进行热度预测的热度预测单元,所述热度预测包括:统计历史信息,以时间间隔T对内容对象i进行统计,记为V1,V2,……,Vn-1,Vn,以V(t)分别表示[0,T),[T,2T),…,[(n-1)T,nT),[nT,t)内的查询请求次数,并确定Fs=Vs/T,s=1,2,…,n,且以F(t)=V(t)/(t-nT)表示相应时间段的请求频率,则内容对象i在时刻t的热度可以表示为:
    Ai(t)=αF(t)+(1-α)(Fn+Fn-1+…+Fn-k+2+Fn-k+1)
    其中:
    α为权值参数,且0<α<1,K为滑动窗口的宽度,即所取的时间区间T的个数。

    8.
      根据权利要求7所述的装置,其特征在于,还包括:
    更新模块,用于依据上述热度预测过程得到的各缓存模块中各内容对象的热度,更新各内容对象的存储位置。

    9.
      根据权利要求7或8所述的装置,其特征在于,还包括:
    触发指示单元,用于在所述请求接收单元接收到用户端查询请求时,发送触发信息以触发所述热度预测单元工作。

    10.
      根据权利要求6~9任意一项所述的装置,其特征在于,还包括:
    深度包检测模块,用于对所述请求接收单元所接收的查询请求,进行协议解析,识别业务类型并确定目的内容;
    业务封装模块,用于在所述内容反馈单元反馈目的内容之前,将该目的内容封装为与所述业务类型匹配的数据包。

    说明书

    基于多级缓存模块的内容查询方法和装置
    技术领域
    本发明涉及网络通信技术领域,更具体的说是涉及一种基于多级缓存模块的内容查询方法和装置。
    背景技术
    本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述可包括可以探究的概念,但不一定是之前已经想到或者已经探究的概念。因此,除非在此指出,否则在本部分中描述的内容对于本申请的说明书和权利要求书而言不是现有技术,并且并不因为包括在本部分中就承认是现有技术。
    随着信息通信技术的发展,网络已经成为人们日常生活不可或缺的信息交流平台。网络传播的内容从静态网页、图片转变成为多媒体(如音、视频)为主,使得大量内容需要在网络间传输。现有技术中,用户端进行内容查询(也可以称为访问)时,由路由器向对应的内容服务器获取目的内容,再将内容转发给用户端。
    发明人在实施本发明创造的过程中,发现上述现有技术存在改进空间,例如在针对某些被频繁查询的内容时,能够缩短响应时间,减少网络资源开销。
    发明内容
    发明人在实施本发明创造过程中,对相关技术进行了研究和分析:
    缓存技术提供了一种有效的方法来弥合这种资源与需求的矛盾。通过将一些内容存储在本地,使得用户直接从本地获取,可以有效地减少跨域流量,节省传输带宽,并且能够加快用户请求的响应速度。
    这种缓存技术中对某些内容是否需要缓存的确定方式一般都很随机,发明人想到可以采用记录内容的被查询次数作为是否缓存的依据,即在查询次数超过预设门限时将内容进行缓存。一般来说,被查询的次数越多,就表示越热门,下一次被查询到的概率就越大。发明人发现,如果本地缓存内容较多,并且缓存的内容存储位置随机,则即使查询的是比较热门的内容,也可能需要花费很多时间,因此在缩短响应时间方面还可以有改进的空间。
    有鉴于此,本发明的一方面,提供一种基于多级缓存模块的内容查询方法,所述多级缓存模块分别存储不同热度级别的内容,所述热度表示被查询概率,所述方法包括:
    接收用户端查询请求,所述请求携带目的内容标识;
    查询存储热度为最高级别的内容的缓存模块,若其中没有目的内容,则查询热度为次高级别的内容的缓存模块,以此类推,直到获得所述目的内容;
    将所述目的内容提供给用户端。
    从上述技术方案可以看出,本发明提供的方案设置多级缓存模块,分别用于存储不同热度级别的内容对象,在进行内容查询时,按照所存储内容的热度级别从高到低的顺序查询各级缓存模块,热度越高(即越热门)的内容存储位置越靠前,被查询的时间也越靠前,因此越容易被查找到。所以本发明提供的方案提高了目的内容的命中率,缩短了查询时间,提高了工作效率。
    在一些实施方式中,还包括针对各级缓存模块中所存储的内容的热度预测过程,该过程包括:
    统计历史信息,以时间间隔T对内容对象i进行统计,记为V1,V2,……,Vn-1,Vn,以V(t)分别表示[0,T),[T,2T),…,[(n-1)T,nT),[nT,t)内的查询请求次数,并确定Fs=Vs/T,s=1,2,…,n,且以F(t)=V(t)/(t-nT)表示相应时间段的请求频率,则内容对象i在时刻t的热度可以表示为:
    Ai(t)=αF(t)+(1-α)(Fn+Fn-1+…+Fn-k+2+Fn-k+1)
    其中:
    α为权值参数,且0<α<1,K为滑动窗口的宽度,即所取的时间区间T的个数。
    本方案进行存储内容的热度预测,可根据预测的结果对存储的内容进行存储位置上的更新,由于用户端查询请求的动态性,所请求的内容(即目的内容)的“流行程度”往往随时间变化,本方案在接收到查询请求时进行内容热度预测并进行位置更新的方式,有利于将当前最热门的内容存储在越容易获取的位置,进一步提高了目的内容的命中率。
    优选的,在上述方案中,还包括:
    依据上述热度预测过程得到的各缓存模块中各内容对象的热度,更新各内容对象的存储位置。
    优选的,上述方案中,所述热度预测过程在接收到用户端查询请求时启动。
    优选的,上述方案中,在接收用户端查询请求后,进行解析确定业务类型,所述将所述目的内容提供给用户端为:将所述目的内容按照所述业务类型封装后发送给用户端。
    本发明另一方面,提供一种基于多级缓存模块的内容查询装置,所述多级缓存模块分别存储不同热度级别的内容,所述热度表示被查询概率,所述装置包括:
    请求接收单元,用于接收用户端查询请求,所述请求携带目的内容标识;
    查询模块,用于查询存储热度为最高级别的内容的缓存模块,若其中没有目的内容,则查询热度为次高级别的内容的缓存模块,以此类推,直到获得所述目的内容;
    内容反馈单元,用于将所述目的内容提供给用户端。
    本方案与前文方法部分相对应,作为实现前文方法部分的一种具体装置。
    附图说明
    为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
    图1示意性地示出了根据本发明实施方式在实际应用中的一个应用场景的框架;
    图2示意性地示出了本发明所提供的内容查询方法一实施方式的流程;
    图3示意性地示出了本发明所提供的内容查询方法另一实施方式的流程;
    图4示意性地示出了本发明所提供的内容查询方法中进行内容对象热度预测的流程;
    图5示意性地示出了本发明所提供的内容查询装置一实施方式的结构;
    图6~图8示意性地示出了本发明所提供的内容查询装置几种实施方式的结构。
    具体实施方式
    下面将参照本发明实施方式的方法的流程图和设备(或系统)的框图描述本发明的实施方式。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,这些计算机程序指令通过计算机或其它可编程数据处理装置执行,产生了实现流程图和/或框图中的方框中规定的功能/操作的装置。
    也可以把这些计算机程序指令存储在能使得计算机或其它可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令就产生出一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置的产品。
    也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令能够提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
    根据本发明的实施方式,提出了一种基于多级缓存模块的内容查询方法和装置。附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
    下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
    发明概述
    本发明提供了一种基于多级缓存模块的内容查询方案,所述多级缓存模块分别存储不同热度级别的内容,在进行内容查询时,查询的顺序按照存储的内容的热度级别从高到低的顺序进行,由于热度级别较高的内容被查询的概率越大,因此将热度级别较高的内容存储在越容易读取的位置,可以提高查询的命中率。
    在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。
    应用场景总览
    参考图1,为本发明实施方式的一个示例性应用场景的框架示意图。
    用户通过输入设备11输入查询请求,该查询请求通过终端设备12发往中间设备13,该中间设备13按照存储的内容的热度级别从高到低的顺序向多级缓存模块14发送查询请求,获取目的内容后反馈给终端设备12,终端设备12将目的内容呈现给用户,如果没有从多级缓存模块14获取到目的内容,则由终端设备12向路由器15发送查询请求,由路由器向外部的源服务器16获取。所述多级缓存模块14包括第一缓存模块Cache1、第二缓存模块Cache2,……,第n缓存模块Cache n。其中:
    Cache1存储热度级别最高(1级)的内容对象,Cache2存储热度级别为2级的内容对象,Cache n存储热度级别最低(n级别)的内容对象。
    每一级内容对象的数量可以为1个或多个。
    示例性方法
    下面结合图1的应用场景,参考图2来描述根据本发明示例性实施方式的内容查询方法。需要注意的是,上述应用场景仅是为了便于理解本发明的精 神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。
    假设缓存模块由Cache1、Cache2和Cache3组成。
    参考图2所示,所示流程例如可以包括以下步骤:
    步骤S21、接收来自用户端的内容查询请求。
    步骤S22、确定所请求的目的内容标识。
    步骤S23、判断所述第一缓存模块(Cache1)中是否存储有所述目的内容,若是,进入步骤S24,否则,进入步骤S25。
    步骤S24、将所述目的内容返回给所述用户端。
    步骤S25、判断所述第二缓存模块(Cache2)中是否存储有所述目的内容,若是,返回步骤S24,否则,进入步骤S26。
    步骤S26、判断所述第三缓存模块(Cache3)中是否存储有所述目的内容,若是,返回步骤S24,否则,进入步骤S27。
    步骤S27、向路由器发送查询请求,由路由器转发给外部源服务器。
    步骤S28、获取路由器转发的来自源服务器的目的内容后返回给用户端。
    所述中间设备可以是用户端本地的设备,也可以是在网络上距离用户端距离较近的网络设备。
    下面以二级缓存(即缓存模块包括Cache1和Cache2)为例,提供一种较为具体的方案,图3示出其流程图,如图所示,包括以下步骤:
    步骤S301、用户端向中间设备发送内容查询请求。
    所述内容查询请求携带业务类型及目的内容标识(该内容标识可以是名字或者编号)。
    步骤S302、中间设备解析所述内容查询请求。
    中间设备对所述内容查询请求进行协议解析,识别出其业务类型及所携带的目的内容标识。
    步骤S303、中间设备查询Cache1中是否有所述目的内容,若是进入步骤S304,否则,进入步骤S306。
    步骤S304、中间设备获取所述目的内容。
    步骤S305、将所述目的内容封装后发送给用户端。
    将所述目的内容按照步骤S302解析出来的业务类型进行封装,然后发送给用户端。
    步骤S306、中间设备向Cache2发送查询请求,若Cache2中具有所述目的内容,进入就步骤S307,否则,进入步骤S309。
    所述查询请求携带目的内容标识。
    步骤S307、中间设备获取所述目的内容。
    步骤S308、中间设备将所述内容封装后发送给用户端。
    步骤S307、中间设备将目的内容从Cache1提出,封装后发送给用户端。
    步骤S309、向用户端发送查询失败的信息。
    步骤S310、用户端向路由器发送查询请求。
    步骤S311、路由器向源服务器发送查询请求。
    所述查询请求同样携带目的内容标识。
    步骤S312、源服务器向路由器反馈目的内容。
    步骤S313、路由器将所述目的内容封装后发送给用户端。
    在其他实施例中,步骤S309~步骤S313的内容可以是:中间设备之间向路由器发送查询请求,由路由器转发给源服务器。中间设备从路由器获取源服务器提供的目的内容后提供给用户端。
    在其他实施例还可以按照某种规则,例如定时或者在某种事件的触发(例如接收到查询请求)下,进行对缓存模块中内容对象的热度预测,并对内容对象在缓存模块中的存储位置进行更新。热度指的是被查询的可能性。
    热度预测过程可以如下:
    统计历史信息,以时间间隔T对内容对象i进行统计,记为V1,V2,……,Vn-1,Vn,以V(t)分别表示[0,T),[T,2T),…,[(n-1)T,nT),[nT,t)内的查询请求次数,并确定Fs=Vs/T,s=1,2,…,n,且以F(t)=V(t)/(t-nT)表示相应时间段的请求频率,如图4所示,则内容对象i在时刻t的热度可以表示为:
    Ai(t)=αF(t)+(1-α)(Fn+Fn-1+…+Fn-k+2+Fn-k+1)
    其中:
    α为权值参数,且0<α<1,K为滑动窗口的宽度,即所取的时间区间T的个数。
    所述权值参数用于调整当前频率和历史频率的权重,可以为经验参数,根据需要进行调整。
    由于用户端查询请求的动态性,所请求的内容(即目的内容)的“流行程度”往往随时间变化。通过滑动窗口机制,内容热度能够自适应地反映用户查询请求的变化,从而可以进行缓存模块中内容对象的更新替换,例如将热度最高的内容对象放置于最易于查找的位置。而缓存模块的容量有限,可以热度排列于较后位置的内容对象删除,或者由对应当前查询请求的目的内容替代。
    示例性设备
    在介绍了本发明示例性实施方式的内容查询方法之后,接下来,参考图5所示,为本发明示例性实施方式的、对应上述内容查询方法的装置的一种实施方式,包括请求接收单元51、查询模块52和内容反馈单元53,其中:
    所述请求接收单元51用于接收用户端查询请求,所述请求携带目的内容标识。
    所述查询模块52用于查询存储热度为最高级别的内容的缓存模块,若其中没有目的内容,则查询热度为次高级别的内容的缓存模块,以此类推,直到获得所述目的内容。
    内容反馈单元53,用于将所述目的内容提供给用户端。
    所述多级缓存模块包括第一缓存模块Cache1、第二缓存模块Cache2,……,第n缓存模块Cache n。其中:
    Cache1存储热度级别最高(1级)的内容对象,Cache2存储热度级别为2级的内容对象,Cache n存储热度级别最低(n级别)的内容对象。
    每一级内容对象的数量可以为1个或多个。
    所述查询模块52从所述请求查收单元51了解到用户端所要查询的内容 (目的内容),先查询Cache1,若Cache1中没有目的内容,则继续查询Cache2,若Cache2中没有目的内容,则向下一级缓存模块查询,若最后一级缓存模块(Cache n)中仍然没有目的内容,则通过路由器向外部源服务器发送查询请求以获取目的内容。
    此外,所述查询模块52在所有缓存模块都没有存储目的内容时,向用户端反馈查找失败信息,由用户端通过路由器向外部源服务器发送查询请求,以获取目的内容,如图6所示。
    在一些实施例中,所述装置按照某种规则,例如定时或者在某种事件的触发(例如在接收到查询请求)下,进行对缓存模块中内容对象的热度的预测,并针对各内容对象按照热度从高到低的顺序进行排列。
    图7示出了一种可能的结构,在上述图5或图6的基础上,增设热度预测单元71和更新模块72,所述热度预测单元71用于对各级缓存模块中存储的内容进行热度预测,所述热度预测包括:统计历史信息,以时间间隔T对内容对象i进行统计,记为V1,V2,……,Vn-1,Vn,以V(t)分别表示[0,T),[T,2T),…,[(n-1)T,nT),[nT,t)内的查询请求次数,并确定Fs=Vs/T,s=1,2,…,n,且以F(t)=V(t)/(t-nT)表示相应时间段的请求频率,则内容对象i在时刻t的热度可以表示为:
    Ai(t)=αF(t)+(1-α)(Fn+Fn-1+…+Fn-k+2+Fn-k+1)
    其中:
    α为权值参数,且0<α<1,K为滑动窗口的宽度,即所取的时间区间T的个数。
    所述更新模块72,用于依据上述热度预测过程得到的各缓存模块中各内容对象的热度,更新各内容对象的存储位置。
    在另外一些可能的结构中,所述内容查询装置还可以包括触发热度预测单元71工作的部件,如图8所示,在图7的基础上,所述内容查询装置还包括触发指示单元81,用于在所述请求接收单元51接收到用户端查询请求时,发送触发信息以触发所述热度预测单元71工作。
    在一些更为具体的结构中,所述内容查询装置还包括:深度包检测模块 和业务封装模块,其中:
    所述深度包检测模块,用于对所述请求接收单元51所接收的查询请求,进行协议解析,识别业务类型并确定目的内容。
    所述业务封装模块,用于在所述内容反馈单元53反馈目的内容之前,将该目的内容封装为与所述业务类型匹配的数据包。
    本实施例所提供的内容查询装置与前文内容查询方法相对应,相互之间可以互相借鉴和补充。
    需要说明的是,本说明书中各个实施例可相互补充,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
    另外,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
    对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

    关 键  词:
    基于 多级 缓存 模块 内容 查询 方法 装置
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:基于多级缓存模块的内容查询方法和装置.pdf
    链接地址:https://www.zhuanlichaxun.net/p-627344.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
    经营许可证编号:粤ICP备2021068784号-1