[发明专利]一种文件传输方法和设备有效
申请号: | 201510702198.2 | 申请日: | 2015-10-26 |
公开(公告)号: | CN105208135B | 公开(公告)日: | 2019-06-14 |
发明(设计)人: | 金友兵;宋瑞霞;刘社鹏 | 申请(专利权)人: | 天津书生云科技有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 北京布瑞知识产权代理有限公司 11505 | 代理人: | 孟潭 |
地址: | 300308 天津市滨海新区空港经*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 文件传输 方法 设备 | ||
本发明的实施方式涉及文件传输的方法和设备。该方法包括接收按文件内容的字节顺序上传的数据,每当接收到预定大小的数据块时,调用文件传输实例对所接收的数据块执行一种或多种处理,并且将所述一种或多种处理的处理结果记录在文件传输实例包括的变量中。该方法还包括在文件传输中断后,对文件传输实例执行序列化操作而进行存储。本发明实施方式能够在文件传输时,提供对文件内容的加密、压缩、文件长度及摘要校验支持等各种处理,但减少了对底层文件系统的读写操作。
技术领域
本发明的实施方式涉及文件传输的技术领域,更具体地,涉及大文件的断点续传。
背景技术
在大多数的互联网应用中,大文件传输的客户端与服务器的传输模式大致包括如下步骤:
(1)客户端发送上传文件请求,包含一个唯一的上传标识符UploadID,文件总长度length、上次文件上传中断后的位置offset、文件摘要(比如,MD5摘要)等参数。其中,在客户端第一次发送上传文件请求时,可以不发送该上次文件上传中断后的位置offset,但通常是发送为零值的offset。
(2)服务端收到上传文件请求后,检查offset参数与本地已上传的文件内容长度是否一致。如果不一致,通知客户端文件续传的断点错误。
(3)客户端开始按文件内容的字节顺序传输数据。
(4)文件传输完毕后,服务端检查上传的文件总长度与请求时的传入文件总长度length参数是否一致(长度校验),服务端重新读取一次已上传文件内容,计算文件摘要,并与请求时传入的文件摘要参数比较是否一致(内容校验)。如果有加密、压缩等的需求时,需要再对磁盘进行一次读写操作,生成新的加密、压缩后的文件,删掉上传的明文文件。
可见,在上面的文件上传流程中,在数据传输完毕后,服务端需要至少两次执行对底层文件存储系统(磁盘)的读和/或写操作,一次是计算摘要进行数据内容校验,一次是加密、压缩产生的读写操作。
发明内容
有鉴于此,本发明实施方式的目的之一旨在使得在大文件上传时对底层文件存储系统的读写操作得以减少。
根据本发明的一个方面,提供一种文件传输方法。该方法包括:接收按文件内容的字节顺序上传的数据,每当接收到预定大小的数据块时,调用文件传输实例对所接收的数据块执行一种或多种处理,并且将所述一种或多种处理的处理结果记录在文件传输实例包括的变量中;以及在文件传输中断后,对所述文件传输实例执行序列化操作而进行存储。所述处理结果针对所述一种或多种处理中的不同的处理包括以下各项中的一种或多种:所述文件的已传输部分的摘要值、所述文件的已传输的字节总数和所述文件的经处理后的字节总数。
根据本发明的实施方式,所述一种或多种处理包括针对所述文件执行的摘要计算、加密处理、压缩处理或者其组合,所述文件传输实例包括用于执行所述一种或多种处理的一个或多个接口。
根据本发明的实施方式,所述摘要计算使用的摘要算法包括MD5、SHA1和SHA512中的一种或多种,所述加密处理的加密算法包括AES、DES、3DES、IDEA和RSA中的一种或多种,所述压缩处理使用的压缩算法包括Deflate和Zip中的一种或多种。
进一步地,该方法还包括:在接收到传输中断后续传的所述文件的内容时,对存储的所述文件传输实例执行反序列化操作,调用反序列化操作后的所述文件传输实例对所接收的所述预定大小的数据块执行所述一种或多种处理。
进一步地,该方法还包括:周期性地或者每接收到预定数量的数据,对所述文件传输实例执行序列化操作而进行存储。
进一步地,该方法还包括:在确定所述文件是首次上传时,创建所述文件传输实例;和/或在确定所述文件上传完毕时,删除所述文件传输实例。
进一步地,将所述文件传输实例存储在NOSQL数据库中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津书生云科技有限公司,未经天津书生云科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510702198.2/2.html,转载请声明来源钻瓜专利网。