一种通过应用缓存提高文件下载速度的方法

文档序号:7665620阅读:388来源:国知局
专利名称:一种通过应用缓存提高文件下载速度的方法
技术领域
本发明涉及一种通过应用緩存提高文件下载速度的方法,特别涉及一 种应用层动态緩存提高文件下载速度的方法。
背景技术
在大量用户同时下载比较大的文件的时候,通常会造成比较大的硬盘
1/0并占用大量的带宽,而且应用服务器的响应速度也会迅速降低,为了 提高文件下载的速度,减少硬盘I/0,我们经过大量实践,总结出来一种
在应用层动态緩存来解决这些问题的方法。

发明内容
本发明所要解决的技术问题是采用把物理文件提前加载到应用程序
的内存并保存在以文件全名为key,值为文件的二进制内存镜像的哈希表 中,以后如果有请求此文件的请求,服务器可以直接根据请求文件名就可 以获得文件的二进制数据流的方法提高文件下载速度。
本发明所述的一种通过应用緩存提高文件下载速度的方法,该方法至 少包括如下的步骤
步骤l:用户点击下载客户端安装包;
步骤2:服务器收到下载文件请求;
步骤3:服务器通过文件名字(包括文件的全部路径)作为键值检查 文件緩存;步骤4:客户端收到服务器reponse的文件数据后,可以保存为本地 文件;
步骤5:如果发布新的文件,则通过专门的后台程序发布;
步骤6:后台程序检查緩存中是否已经存在待发布的文件,如果存在, 则发布文件后马上更新緩存。也就是把新发布的文件以二进制方式存入緩 存,键值用文件名。
本发明所述的一种通过应用緩存提高文件下载速度的方法,服务器通 过文件名字(包括文件的全部路径)作为键值;险查文件緩存,其步骤为 步骤31:如果緩存中已经緩存了文件数据,则直接把緩存的文件以二 进制流的方式写入response;
步骤32:如果緩存中不存在此文件,则通过一次文件1/0,读取整个 文件先放入緩存后,再把緩存的文件以二进制流的方式写入response。


图1为本发明的实施例涉及的系统的整体结构示意图
具体实施例方式
步骤l:用户点击下载客户端安装包; 步骤2:服务器收到下载文件请求;
步骤3:服务器通过文件名字(包括文件的全部路径)作为键值检查文 件緩存;
步骤4:客户端收到服务器reponse的文件数据后,可以保存为本地 文件;
步骤5:如果发布新的文件,则通过专门的后台程序发布;步骤6:后台程序检查緩存中是否已经存在待发布的文件,如果存在, 则发布文件后马上更新緩存。也就是把新发布的文件以二进制方式存入緩 存,键值用文件名。
上述步骤3服务器通过文件名字(包括文件的全部路径)作为键值检 查文件緩存的具体步骤如下
步骤31:如果緩存中已经緩存了文件数据,则直接把緩存的文件以二 进制流的方式写入response;
步骤32:如果緩存中不存在此文件,则通过一次文件1/0,读取整个 文件先it入緩存后,再把纟爰存的文件以二进制流的方式写入response。
上述的技术方案实施时提高了文件下载的速度,减少硬盘I/0,同时 也提高了应用服务器的响应速度。
最后所应说明的是,以上实施例仅用以说明而并非限制本发明所描述 的技术方案;因此,尽管本说明书参照上述的实施例对本发明已进行了详 细的说明,但是,本领域的普通技术人员应当理解,仍然可以对本发明进 行修改或者等同地替换;而一切不脱离本发明的精神和范围的技术方案及 其改进,其均应涵盖在本发明的权利要求范围当中。 权利要求
1、一种通过应用缓存提高文件下载速度的方法,其特征在于该方法至少包括如下的步骤步骤1用户点击下载客户端安装包;步骤2服务器收到客户端的下载文件请求;步骤3服务器通过文件名字作为键值检查文件缓存;步骤4客户端收到服务器reponse回客户端的文件数据后,可以保存为本地文件;步骤5如果发布新的文件,则通过专门的后台程序发布;步骤6后台程序检查缓存中是否已经存在待发布的文件,如果存在,则发布文件后马上更新缓存;也就是把新发布的文件以二进制方式存入缓存,键值用文件名。
2、根据权利要求1所述的一种通过应用緩存提高文件下载速度的方法, 其特征在于服务器通过文件名字作为键值^r查文件緩存,其步骤为步骤31:如果緩存中已经緩存了文件数据,则直接把緩存的文件以二 进制流的方式写入response;步骤32:如果緩存中不存在此文件,则通过一次文件1/0,读取整个 文件先放入緩存后,再把緩存的文件以二进制流的方式写入response。
全文摘要
一种通过应用缓存提高文件下载速度的方法,首先用户点击下载客户端安装包;然后服务器收到客户端的下载文件请求;服务器通过文件名字作为键值检查文件缓存;客户端收到服务器reponse回客户端的文件数据后,可以保存为本地文件;如果发布新的文件,则通过专门的后台程序发布;最后后台程序检查缓存中是否已经存在待发布的文件,如果存在,则发布文件后马上更新缓存。也就是把新发布的文件以二进制方式存入缓存,键值用文件名。本发明使得在大量用户同时下载比较大的文件的时候,文件下载的速度得到提高,减少硬盘I/O,同时也提高了应用服务器的响应速度。
文档编号H04L12/56GK101453410SQ20071017901
公开日2009年6月10日 申请日期2007年12月7日 优先权日2007年12月7日
发明者刘立军 申请人:北京闻言科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1