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

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

Info

Publication number
CN101453410A
CN101453410A CNA200710179013XA CN200710179013A CN101453410A CN 101453410 A CN101453410 A CN 101453410A CN A200710179013X A CNA200710179013X A CN A200710179013XA CN 200710179013 A CN200710179013 A CN 200710179013A CN 101453410 A CN101453410 A CN 101453410A
Authority
CN
China
Prior art keywords
file
buffer memory
server
cache
client
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA200710179013XA
Other languages
English (en)
Inventor
刘立军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Wenyan Technology Co Ltd
Original Assignee
Beijing Wenyan Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Wenyan Technology Co Ltd filed Critical Beijing Wenyan Technology Co Ltd
Priority to CNA200710179013XA priority Critical patent/CN101453410A/zh
Publication of CN101453410A publication Critical patent/CN101453410A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

一种通过应用缓存提高文件下载速度的方法,首先用户点击下载客户端安装包;然后服务器收到客户端的下载文件请求;服务器通过文件名字作为键值检查文件缓存;客户端收到服务器reponse回客户端的文件数据后,可以保存为本地文件;如果发布新的文件,则通过专门的后台程序发布;最后后台程序检查缓存中是否已经存在待发布的文件,如果存在,则发布文件后马上更新缓存。也就是把新发布的文件以二进制方式存入缓存,键值用文件名。本发明使得在大量用户同时下载比较大的文件的时候,文件下载的速度得到提高,减少硬盘I/O,同时也提高了应用服务器的响应速度。

Description

一种通过应用缓存提高文件下载速度的方法
技术领域
本发明涉及一种通过应用缓存提高文件下载速度的方法,特别涉及一种应用层动态缓存提高文件下载速度的方法。
背景技术
在大量用户同时下载比较大的文件的时候,通常会造成比较大的硬盘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,同时也提高了应用服务器的响应速度。
最后所应说明的是,以上实施例仅用以说明而并非限制本发明所描述的技术方案;因此,尽管本说明书参照上述的实施例对本发明已进行了详细的说明,但是,本领域的普通技术人员应当理解,仍然可以对本发明进行修改或者等同地替换;而一切不脱离本发明的精神和范围的技术方案及其改进,其均应涵盖在本发明的权利要求范围当中。

Claims (2)

1、一种通过应用缓存提高文件下载速度的方法,其特征在于:该方法至少包括如下的步骤:
步骤1:用户点击下载客户端安装包;
步骤2:服务器收到客户端的下载文件请求;
步骤3:服务器通过文件名字作为键值检查文件缓存;
步骤4:客户端收到服务器reponse回客户端的文件数据后,可以保存为本地文件;
步骤5:如果发布新的文件,则通过专门的后台程序发布;
步骤6:后台程序检查缓存中是否已经存在待发布的文件,如果存在,则发布文件后马上更新缓存;也就是把新发布的文件以二进制方式存入缓存,键值用文件名。
2、根据权利要求1所述的一种通过应用缓存提高文件下载速度的方法,其特征在于:服务器通过文件名字作为键值检查文件缓存,其步骤为:
步骤31:如果缓存中已经缓存了文件数据,则直接把缓存的文件以二进制流的方式写入response;
步骤32:如果缓存中不存在此文件,则通过一次文件I/O,读取整个文件先放入缓存后,再把缓存的文件以二进制流的方式写入response。
CNA200710179013XA 2007-12-07 2007-12-07 一种通过应用缓存提高文件下载速度的方法 Pending CN101453410A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA200710179013XA CN101453410A (zh) 2007-12-07 2007-12-07 一种通过应用缓存提高文件下载速度的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA200710179013XA CN101453410A (zh) 2007-12-07 2007-12-07 一种通过应用缓存提高文件下载速度的方法

Publications (1)

Publication Number Publication Date
CN101453410A true CN101453410A (zh) 2009-06-10

Family

ID=40735440

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA200710179013XA Pending CN101453410A (zh) 2007-12-07 2007-12-07 一种通过应用缓存提高文件下载速度的方法

Country Status (1)

Country Link
CN (1) CN101453410A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102137122A (zh) * 2010-01-22 2011-07-27 北京金山数字娱乐科技有限公司 一种下载数据的方法及装置
CN103220260A (zh) * 2012-01-20 2013-07-24 腾讯科技(深圳)有限公司 更新数据的方法、服务器、客户端及系统
CN103365897A (zh) * 2012-04-01 2013-10-23 华东师范大学 一种支持Bigtable数据模型的片段缓存方法
CN105487935A (zh) * 2015-12-07 2016-04-13 中南大学 一种基于环境感知的主动服务获取方法
CN109753813A (zh) * 2019-01-28 2019-05-14 恒峰信息技术有限公司 一种文件安全处理方法
CN114374677A (zh) * 2020-10-15 2022-04-19 中国移动通信集团浙江有限公司 跨平台在线发布方法、装置、计算设备及存储介质

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102137122A (zh) * 2010-01-22 2011-07-27 北京金山数字娱乐科技有限公司 一种下载数据的方法及装置
WO2011088710A1 (zh) * 2010-01-22 2011-07-28 北京金山软件有限公司 一种下载数据的方法及装置
CN102137122B (zh) * 2010-01-22 2014-08-20 广州华多网络科技有限公司 一种下载数据的方法及装置
CN103220260A (zh) * 2012-01-20 2013-07-24 腾讯科技(深圳)有限公司 更新数据的方法、服务器、客户端及系统
CN103365897A (zh) * 2012-04-01 2013-10-23 华东师范大学 一种支持Bigtable数据模型的片段缓存方法
CN105487935A (zh) * 2015-12-07 2016-04-13 中南大学 一种基于环境感知的主动服务获取方法
CN109753813A (zh) * 2019-01-28 2019-05-14 恒峰信息技术有限公司 一种文件安全处理方法
CN114374677A (zh) * 2020-10-15 2022-04-19 中国移动通信集团浙江有限公司 跨平台在线发布方法、装置、计算设备及存储介质
CN114374677B (zh) * 2020-10-15 2023-12-26 中国移动通信集团浙江有限公司 跨平台在线发布方法、装置、计算设备及存储介质

Similar Documents

Publication Publication Date Title
CN101453410A (zh) 一种通过应用缓存提高文件下载速度的方法
US9130953B2 (en) Intelligent network streaming and execution system for conventionally coded applications
US8984058B2 (en) Pre-fetching remote resources
US7043524B2 (en) Network caching system for streamed applications
US20080271130A1 (en) Minimizing client-side inconsistencies in a distributed virtual file system
CN101656789B (zh) 手机实现管理应用程序信息的方法及应用程序管理器
US20150235015A1 (en) Optimized Server for Streamed Applications
US9906597B2 (en) Collaboration data proxy system in cloud computing platforms
US7539762B2 (en) Method, system and program product for determining an initial number of connections for a multi-source file download
TWI306558B (en) Method, sysrem and computer readable medium recording relevant instructions utilizing paging to support dynamic code updates
US20020087883A1 (en) Anti-piracy system for remotely served computer applications
US20020083183A1 (en) Conventionally coded application conversion system for streamed delivery and execution
US8380808B2 (en) Dynamic medium content streaming system
JP2008527468A (ja) ハイブリッド・ローカル/リモート・ストリーミング
EP2418809A1 (en) Method and apparatus for processing and updating service contents in a distributed file system
JP2015506044A (ja) オン・デマンドのステージングを用いる高速アプリケーション・ストリーミング
JP2011514593A5 (zh)
US10999371B2 (en) Request multiplexing
CN102546674A (zh) 一种基于网络存储装置的目录树缓存系统及方法
CN106406764A (zh) 一种分布式san块存储的高效能数据访问系统及方法
US8234247B2 (en) Content management system and method for portable device
CN102904917A (zh) 海量图片的处理系统及其方法
CN100372283C (zh) 多点下载中保证数据块在整个系统均匀分布的方法和装置
CN106020713A (zh) 一种基于缓冲区的文件存储方法
US7792845B1 (en) Network acceleration device having logically separate views of a cache space

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20090610