[发明专利]一种通过应用缓存提高文件下载速度的方法无效
| 申请号: | 200710179013.X | 申请日: | 2007-12-07 |
| 公开(公告)号: | CN101453410A | 公开(公告)日: | 2009-06-10 |
| 发明(设计)人: | 刘立军 | 申请(专利权)人: | 北京闻言科技有限公司 |
| 主分类号: | H04L12/56 | 分类号: | H04L12/56;H04L29/06 |
| 代理公司: | 北京连城创新知识产权代理有限公司 | 代理人: | 刘伍堂 |
| 地址: | 100085北京市海*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 通过 应用 缓存 提高 文件 下载 速度 方法 | ||
技术领域
本发明涉及一种通过应用缓存提高文件下载速度的方法,特别涉及一种应用层动态缓存提高文件下载速度的方法。
背景技术
在大量用户同时下载比较大的文件的时候,通常会造成比较大的硬盘I/O并占用大量的带宽,而且应用服务器的响应速度也会迅速降低,为了提高文件下载的速度,减少硬盘I/O,我们经过大量实践,总结出来一种在应用层动态缓存来解决这些问题的方法。
发明内容
本发明所要解决的技术问题是采用把物理文件提前加载到应用程序的内存并保存在以文件全名为key,值为文件的二进制内存镜像的哈希表中,以后如果有请求此文件的请求,服务器可以直接根据请求文件名就可以获得文件的二进制数据流的方法提高文件下载速度。
本发明所述的一种通过应用缓存提高文件下载速度的方法,该方法至少包括如下的步骤:
步骤1:用户点击下载客户端安装包;
步骤2:服务器收到下载文件请求;
步骤3:服务器通过文件名字(包括文件的全部路径)作为键值检查文件缓存;
步骤4:客户端收到服务器reponse的文件数据后,可以保存为本地文件;
步骤5:如果发布新的文件,则通过专门的后台程序发布;
步骤6:后台程序检查缓存中是否已经存在待发布的文件,如果存在,则发布文件后马上更新缓存。也就是把新发布的文件以二进制方式存入缓存,键值用文件名。
本发明所述的一种通过应用缓存提高文件下载速度的方法,服务器通过文件名字(包括文件的全部路径)作为键值检查文件缓存,其步骤为:
步骤31:如果缓存中已经缓存了文件数据,则直接把缓存的文件以二进制流的方式写入response;
步骤32:如果缓存中不存在此文件,则通过一次文件I/O,读取整个文件先放入缓存后,再把缓存的文件以二进制流的方式写入response。
附图说明
图1为本发明的实施例涉及的系统的整体结构示意图
具体实施方式
步骤1:用户点击下载客户端安装包;
步骤2:服务器收到下载文件请求;
步骤3:服务器通过文件名字(包括文件的全部路径)作为键值检查文件缓存;
步骤4:客户端收到服务器reponse的文件数据后,可以保存为本地文件;
步骤5:如果发布新的文件,则通过专门的后台程序发布;
步骤6:后台程序检查缓存中是否已经存在待发布的文件,如果存在,则发布文件后马上更新缓存。也就是把新发布的文件以二进制方式存入缓存,键值用文件名。
上述步骤3服务器通过文件名字(包括文件的全部路径)作为键值检查文件缓存的具体步骤如下:
步骤31:如果缓存中已经缓存了文件数据,则直接把缓存的文件以二进制流的方式写入response;
步骤32:如果缓存中不存在此文件,则通过一次文件I/O,读取整个文件先放入缓存后,再把缓存的文件以二进制流的方式写入response。
上述的技术方案实施时提高了文件下载的速度,减少硬盘I/O,同时也提高了应用服务器的响应速度。
最后所应说明的是,以上实施例仅用以说明而并非限制本发明所描述的技术方案;因此,尽管本说明书参照上述的实施例对本发明已进行了详细的说明,但是,本领域的普通技术人员应当理解,仍然可以对本发明进行修改或者等同地替换;而一切不脱离本发明的精神和范围的技术方案及其改进,其均应涵盖在本发明的权利要求范围当中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京闻言科技有限公司,未经北京闻言科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710179013.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种在脆性非金属板料镶石的方法
- 下一篇:一种打印机





