一种调整文件缓存时间的方法与装置制造方法

文档序号:6621418阅读:169来源:国知局
一种调整文件缓存时间的方法与装置制造方法
【专利摘要】本发明实施例公开了一种调整文件缓存时间的方法及装置,所述方法包括:定时扫描当前文件,每次扫描当前文件后,记录当次扫描得到的当前文件的信息,并根据记录的信息确定当前文件相较于前一扫描时间是否被修改,若确定被修改则记录修改时间;根据记录的修改时间,统计预设时间段内当前文件的修改频率,依据修改频率计算当前文件的缓冲时间;并根据计算结果设定当前文件的缓冲时间。通过本发明实施例公开了一种调整文件缓存时间的方法及装置,实现动态调整缓冲时间,减少文件回源的次数,节省带宽和服务器端资源。
【专利说明】一种调整文件缓存时间的方法与装置

【技术领域】
[0001]本发明实施例涉及互联网【技术领域】,尤其涉及一种调整文件缓存时间的方法与装置。

【背景技术】
[0002]HTTP (Hypertext transfer protocol,超文本传输协议)缓存技术可以将万维网Web服务器发送的HTTP文件缓存在本地,当用户再次请求访问HTTP文件时,不需要向Web服务器请求发送HTTP文件,直接读取本地HTTP文件即可,可以节省大量的带宽资源并且降低Web服务器的响应负载。
[0003]由于HTTP文件有着不同的修改频率,有些HTTP文件修改频率比较高,可以设置较短的缓存时间,有些HTTP文件修改频率较低,可以设置较长的缓存时间,合理的设置缓存时间可以节省带宽和服务器端资源。
[0004]目前依靠人工的方式来设定缓存时间,但是在一些大型的Web服务器中,HTTP文件数量众多,只能将HTTP文件区分成几个目录来设置缓存时间。简单的依靠目录或者其他的一些静态的指标来设置缓存时间,设置的缓存时间并不精确,缓存容量不能得到充分的利用,增加了 HTTP文件回源的次数,会浪费带宽资源,增加Web服务器的响应负载。


【发明内容】

[0005]本发明提供一种调整文件缓存时间的方法与装置,以实现减少文件回源的次数,节省带宽和服务器端资源的目的。
[0006]一方面,本发明实施例公开了一种调整文件缓存时间的方法,包括:
[0007]定时扫描当前文件,每次扫描所述当前文件后,记录当次扫描得到的所述当前文件的信息,并根据记录的信息确定所述当前文件相较于前一扫描时间是否被修改,若确定被修改则记录修改时间;
[0008]根据记录的修改时间,统计预设时间段内所述当前文件的修改频率,依据所述修改频率计算所述当前文件的缓冲时间;
[0009]并根据计算结果设定所述当前文件的缓冲时间。
[0010]优选地,所述根据记录的信息确定所述当前文件相较于前一扫描时间是否被修改包括:
[0011]获取前一次扫描得到的所述当前文件的信息,比较前一次扫描得到的所述当前文件的信息和当次扫描得到的所述当前文件的信息;
[0012]如果前一次扫描得到的所述当前文件的信息与当次扫描得到的所述当前文件的信息不一致,则确定所述当前文件相较于前一扫描时间被修改,否则,确定所述当前文件相较于前一扫描时间未被修改。
[0013]优选地,所述当前文件的信息包括:摘要信息、最后修改信息、被请求变量的实体值ETag和文件内容中的至少一个。
[0014]优选地,所述根据计算结果设定所述当前文件的缓冲时间包括:
[0015]依据所述当前文件的缓存时间,选择服务器或缓存节点的缓存设定接口,设定所述当前文件的缓存时间。
[0016]另一方面,本发明实施例提供了一种调整文件缓存时间的装置,包括:
[0017]当前文件扫描模块,用于定时扫描当前文件,每次扫描所述当前文件后,记录当次扫描得到的所述当前文件的信息,并根据记录的信息确定所述当前文件相较于前一扫描时间是否被修改,若确定被修改则记录修改时间;
[0018]缓冲时间计算模块,用于根据记录的修改时间,统计预设时间段内所述当前文件的修改频率,依据所述修改频率计算所述当前文件的缓冲时间;
[0019]缓冲时间设定模块,用于并根据计算结果设定所述当前文件的缓冲时间。
[0020]优选地,所述当前文件扫描模块包括:
[0021]定时扫描模块,用于定时扫描当前文件,每次扫描所述当前文件后,记录当次扫描得到的所述当前文件的信息;和
[0022]信息比较模块,用于获取前一次扫描得到的所述当前文件的信息,比较前一次扫描得到的所述当前文件的信息和当次扫描得到的所述当前文件的信息;如果前一次扫描得到的所述当前文件的信息与当次扫描得到的所述当前文件的信息不一致,则确定所述当前文件相较于前一扫描时间被修改,否则,确定所述当前文件相较于前一扫描时间未被修改。
[0023]优选地,所述当前文件的信息包括:摘要信息、最后修改信息、被请求变量的实体值ETag和文件内容中的至少一个。
[0024]优选地,缓冲时间设定模块具体用于,依据所述当前文件的缓存时间,选择服务器或缓存节点的缓存设定接口,设定所述当前文件的缓存时间。
[0025]本发明实施例提供了一种调整文件缓存时间的方法与装置,定时扫描当前文件,每次扫描当前文件后,记录当次扫描得到的当前文件的信息,并根据记录的信息确定当前文件相较于前一扫描时间是否被修改,若确定被修改则记录修改时间;根据记录的修改时间,统计预设时间段内当前文件的修改频率,依据修改频率计算当前文件的缓冲时间;并根据计算结果设定当前文件的缓冲时间,实现动态调整缓冲时间,减少文件回源的次数,节省带宽和服务器端资源。

【专利附图】

【附图说明】
[0026]图1为本发明实施例一提供的一种调整文件缓存时间的方法的流程图;
[0027]图2为本发明实施例二提供的一种调整文件缓存时间的方法的流程图;
[0028]图3为本发明实施例三提供的一种调整文件缓存时间的装置的结构示意图。

【具体实施方式】
[0029]下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
[0030]实施例一
[0031]图1为本发明实施例一提供的一种调整文件缓存时间的方法的流程图,本实施例可适用于将文件从服务器缓存到本地的情况下,该方法可以由调整文件缓存时间的装置来执行,具体包括如下步骤:
[0032]步骤S101,定时扫描当前文件,每次扫描当前文件后,记录当次扫描得到的当前文件的信息,并根据记录的信息确定当前文件相较于前一扫描时间是否被修改,若确定被修改则记录修改时间。
[0033]在步骤SlOl中,记录的当前文件的信息可以包括:摘要信息、最后修改信息、被请求变量的实体值ETag和文件内容中的至少一个。优选的是,可以通过MD5 (Message DigestAlgorithm5,消息摘要算法第五版)算法和SHAl (Secure Hash Algorithm,安全哈希算法)算法获得摘要信息。并可以根据摘要信息、最后修改信息、被请求变量的实体值ETag和文件内容中的至少一个,确定当前文件相较于前一扫描时间是否被修改,若确定被修改则记录修改时间。
[0034]步骤S102,根据记录的修改时间,统计预设时间段内当前文件的修改频率,依据修改频率计算当前文件的缓冲时间。
[0035]在步骤S102中,具体的,记录的修改时间可以是在扫描周期内历次修改的修改时间。可以根据记录的当前文件历次修改时间,统计预设时间段内当前文件的修改频率,依据修改频率计算当前文件的缓冲时间。例如,当前文件修改频率高于预设的频率时,可以缩短当前文件的缓冲时间;当前文件修改频率低于预设的频率时,可以延长当前文件的缓冲时间。由于缓冲容量有限,调整缓冲时间,可以合理分配缓冲容量,防止发生由于缓冲文件的容量超过缓存容量,发生随机丢弃缓存文件的状况。
[0036]步骤S103,并根据计算结果设定当前文件的缓冲时间。
[0037]在步骤S103中,依据当前文件的缓存时间,可以通过选择服务器或缓存节点的缓存设定接口,设定当前文件的缓存时间。
[0038]通过本发明实施例一提供的一种调整文件缓存时间的方法,实现动态调整缓冲时间,减少文件回源的次数,节省带宽和服务器端资源。
[0039]实施例二
[0040]图2为本发明实施例二提供的一种调整文件缓存时间的方法的流程图示意图。本发明实施例二提供了一种调整文件缓存时间的方法,如图2所示,包括以下步骤:
[0041]步骤S201,定时扫描当前文件,每次扫描所述当前文件后,记录当次扫描得到的所述当前文件的信息;
[0042]在步骤S201中,扫描获得的当前文件的信息可以包括:摘要信息、最后修改信息、被请求变量的实体值ETag和文件内容中的至少一个。
[0043]步骤S202,获取前一次扫描得到的当前文件的信息,比较前一次扫描得到的当前文件的信息和当次扫描得到的当前文件的信息;如果前一次扫描得到的当前文件的信息与当次扫描得到的当前文件的信息不一致,则确定当前文件相较于前一扫描时间被修改,则执行步骤S203 ;否则,确定当前文件相较于前一扫描时间未被修改,返回执行步骤S201。
[0044]在步骤S202中,可以通过比较前一次扫描得到的当前文件的信息和当次扫描得到的当前文件的信息中摘要信息、最后修改信息、被请求变量的实体值ETag和文件内容中的至少一个,判断前一次扫描得到的当前文件的信息与当次扫描得到的当前文件的信息是否一致。
[0045]步骤S203,记录当前文件的修改时间。
[0046]在步骤S203中,可以记录的扫描周期内的历次当前文件的修改时间。
[0047]步骤S204,根据记录的修改时间,统计预设时间段内所述当前文件的修改频率,依据所述修改频率计算所述当前文件的缓冲时间;
[0048]步骤S205,根据计算结果设定所述当前文件的缓冲时间。
[0049]通过本发明实施例二提供的一种通过动态调整缓冲时间,减少文件回源的次数,节省带宽和服务器端资源。
[0050]实施例三
[0051]图3为本发明实施例三提供的一种调整文件缓存时间的装置的结构示意图。
[0052]本发明实施例三提供了一种调整文件缓存时间的装置,如图3所示,包括:当前文件扫描模块31、缓冲时间计算模块32和缓冲时间设定模块33。
[0053]其中,当前文件扫描模块31,用于定时扫描当前文件,每次扫描当前文件后,记录当次扫描得到的当前文件的信息,并根据记录的信息确定当前文件相较于前一扫描时间是否被修改,若确定被修改则记录修改时间;缓冲时间计算模块32,用于根据记录的修改时间,统计预设时间段内当前文件的修改频率,依据修改频率计算当前文件的缓冲时间;缓冲时间设定模块33,用于并根据计算结果设定当前文件的缓冲时间。
[0054]在当前文件扫描模块31中,当前文件的信息包括:摘要信息、最后修改信息、被请求变量的实体值ETag和文件内容中的至少一个。
[0055]当前文件扫描模块31具体包括:定时扫描模块311和信息比较模块312。定时扫描模块311,用于定时扫描当前文件,每次扫描当前文件后,记录当次扫描得到的当前文件的信息;信息比较模块312,用于获取前一次扫描得到的当前文件的信息,比较前一次扫描得到的当前文件的信息和当次扫描得到的当前文件的信息;如果前一次扫描得到的当前文件的信息与当次扫描得到的当前文件的信息不一致,则确定当前文件相较于前一扫描时间被修改,否则,确定当前文件相较于前一扫描时间未被修改。
[0056]在缓冲时间计算模块32中,具体的记录的修改时间可以是在扫描周期内,当前文件历次修改的修改时间。可以根据记录的当前文件历次修改时间,统计预设时间段内当前文件的修改频率,依据修改频率计算当前文件的缓冲时间。具体的,当前文件修改频率较高时,可以缩短当前文件的缓冲时间;当前文件修改频率较低时,可以延长当前文件的缓冲时间。由于缓冲容量有限,调整缓冲时间,可以合理分配缓冲容量,防止发生由于缓冲文件的容量超过缓存容量,发生随机丢弃缓存文件的状况。
[0057]缓冲时间设定模块33具体用于,依据当前文件的缓存时间,选择服务器或缓存节点的缓存设定接口,设定当前文件的缓存时间。
[0058]通过本发明实施例三提供的一种通过动态调整缓冲装置,减少文件回源的次数,节省带宽和服务器端资源。
[0059]注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
【权利要求】
1.一种调整文件缓存时间的方法,其特征在于,包括: 定时扫描当前文件,每次扫描所述当前文件后,记录当次扫描得到的所述当前文件的信息,并根据记录的信息确定所述当前文件相较于前一扫描时间是否被修改,若确定被修改则记录修改时间; 根据记录的修改时间,统计预设时间段内所述当前文件的修改频率,依据所述修改频率计算所述当前文件的缓冲时间; 并根据计算结果设定所述当前文件的缓冲时间。
2.根据权利要求1所述的方法,其特征在于,所述根据记录的信息确定所述当前文件相较于前一扫描时间是否被修改包括: 获取前一次扫描得到的所述当前文件的信息,比较前一次扫描得到的所述当前文件的信息和当次扫描得到的所述当前文件的信息; 如果前一次扫描得到的所述当前文件的信息与当次扫描得到的所述当前文件的信息不一致,则确定所述当前文件相较于前一扫描时间被修改,否则,确定所述当前文件相较于前一扫描时间未被修改。
3.根据权利要求2所述的方法,其特征在于,所述当前文件的信息包括:摘要信息、最后修改信息、被请求变量的实体值ETag和文件内容中的至少一个。
4.根据权利要求1所述的方法,其特征在于,所述根据计算结果设定所述当前文件的缓冲时间包括: 依据所述当前文件的缓存时间,选择服务器或缓存节点的缓存设定接口,设定所述当前文件的缓存时间。
5.一种调整文件缓存时间的装置,其特征在于,包括: 当前文件扫描模块,用于定时扫描当前文件,每次扫描所述当前文件后,记录当次扫描得到的所述当前文件的信息,并根据记录的信息确定所述当前文件相较于前一扫描时间是否被修改,若确定被修改则记录修改时间; 缓冲时间计算模块,用于根据记录的修改时间,统计预设时间段内所述当前文件的修改频率,依据所述修改频率计算所述当前文件的缓冲时间; 缓冲时间设定模块,用于根据计算结果设定所述当前文件的缓冲时间。
6.根据权利要求5所述的装置,其特征在于,所述当前文件扫描模块包括: 定时扫描模块,用于定时扫描当前文件,每次扫描所述当前文件后,记录当次扫描得到的所述当前文件的信息;和 信息比较模块,用于获取前一次扫描得到的所述当前文件的信息,比较前一次扫描得到的所述当前文件的信息和当次扫描得到的所述当前文件的信息;如果前一次扫描得到的所述当前文件的信息与当次扫描得到的所述当前文件的信息不一致,则确定所述当前文件相较于前一扫描时间被修改,否则,确定所述当前文件相较于前一扫描时间未被修改。
7.根据权利要求6所述的装置,其特征在于,所述当前文件的信息包括:摘要信息、最后修改信息、被请求变量的实体值ETag和文件内容中的至少一个。
8.根据权利要求5所述的装置,其特征在于,缓冲时间设定模块具体用于,依据所述当前文件的缓存时间,选择服务器或缓存节点的缓存设定接口,设定所述当前文件的缓存时间。
【文档编号】G06F17/30GK104133881SQ201410360927
【公开日】2014年11月5日 申请日期:2014年7月25日 优先权日:2014年7月25日
【发明者】刘杰, 梁润强, 霍键聪 申请人:广东睿江科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1