[发明专利]在客户端和服务器之间实现文件的快速上传在审
申请号: | 201710404052.9 | 申请日: | 2017-06-01 |
公开(公告)号: | CN107172174A | 公开(公告)日: | 2017-09-15 |
发明(设计)人: | 李刚 | 申请(专利权)人: | 重庆高略启达智慧城市信息技术有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 上海光华专利事务所31219 | 代理人: | 赵丝丝 |
地址: | 401122 重庆市北*** | 国省代码: | 重庆;85 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 客户端 服务器 之间 实现 文件 快速 上传 | ||
技术领域
本发明涉及互联网中的数据传输技术,特别是涉及一种在客户端和服务器之间实现文件的快速上传的方案。
背景技术
随着互联网、移动互联网的普及,用户上传文件需求巨大。HTTP协议使得用户可以通过浏览器软件从互联网上获取、上传信息。HTTP协议在现阶段使用非常普遍,大多数用户终端设备(手机、平板、普通电脑等)与服务器之间均通过HTTP协议交互数据,包括上传文件。但由于手机等终端使用WIFI、移动网络接入互联网,而WIFI和移动网络通常由于覆盖、干扰、无线穿透等因素质量不好,已出现网络中断、速度慢等情况,从而导致上传文件失败、速率慢,特别是上传大文件时失败率极高,用户体验不佳。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种在客户端和服务器之间实现文件的快速上传的方案,用于克服在通信质量不佳情况下文件上传失败率极高的问题。
为实现上述目的及其他相关目的,本发明提供以下解决方案:
根据本发明的第一方面
一种文件上传方法,包括:在一客户端对一第一文件进行划分得到N个文件块以及对每一所述文件块进行划分得到M个文件片,其中,M和N取正整数;所述客户端根据N个文件块启动N个任务来一一对被划分为M个文件片的各文件块进行分片上传至一服务器,其中,所述N个任务异步进行,在每上传完一文件片后,所述客户端对所述文件片上传前后的数据校验值来确定上传至所述服务器中的文件片是否正确;在N个文件块全部上传完成后,所述客户端请求所述服务器将N个文件块重新组合成一第二文件,并根据所述第二文件和第一文件的文件校验值来确定所述第一文件是否上传成功。
根据本发明的第二方面
一种文件上传装置,设置于客户端侧,所述文件上传装置包括:文件划分模块,用于对一第一文件进行划分得到N个文件块以及对每一所述文件块进行划分得到M个文件片,其中,M和N取正整数;文件块上传模块,用于根据N个文件块启动N个任务来一一对被划分为M个文件片的各文件块进行分片上传至一服务器,其中,所述N个任务异步进行,在每上传完一文件片后,所述客户端对所述文件片上传前后的数据校验值来确定上传至所述服务器中的文件片是否正确;文件验证模块,用于在N个文件块全部上传完成后,所述客户端请求所述服务器将N个文件块重新组合成一第二文件,并根据所述第二文件和第一文件的文件校验值来确定所述第一文件是否上传成功。
根据本发明的第三方面
一种文件接收方法,包括:根据一任务接收一文件片,将所述文件片缓存在根据所述任务创建的一文件块缓存区,其中,在所述文件片缓存完成后,计算一次所述文件片的一第一校验值,并将所述第一校验值和下一文件块在所述文件块缓存区的一缓存地址给所述客户端;接收一文件生成请求,根据所述文件生成请求携带的文件块的划分顺序将各所述文件块缓存区中对应的文件块重新组合成一第二文件,并根据所述第二文件生成一第一文件校验值,将所述第一文件校验值返回给客户端。
根据本发明的第四方面
一种文件接收装置,设置于服务器侧,所述文件接收装置包括:文件片接收单元,用于根据一任务接收一文件片,将所述文件片缓存在根据所述任务创建的一文件块缓存区,其中,在所述文件片缓存完成后,计算一次所述文件片的一第一校验值,并将所述第一校验值和下一文件块在所述文件块缓存区的一缓存地址给所述客户端;文件生成单元,接收一文件生成请求,根据所述文件生成请求携带的文件块的划分顺序将各所述文件块缓存区中对应的文件块重新组合成一第二文件,并根据所述第二文件生成一第一文件校验值,将所述第一文件校验值返回给客户端。
根据本发明的第五方面
一种文件上传系统,包括一服务器和与所述服务器网络连接的至少一客户端,所述客户端包括上述文件上传装置;所述服务器包括上述文件接收装置。
本发明的有益效果:
文件上传速度和成功率先比现有技术更高,具体体现在以下方面:采用分块上传,单块上传失败可以从块重传,无需整个文件重传,即支持断点续传,节省网络资源;采用分片上传,单片大小较小,保证单次文件上传请求消息数据包较小,不易受网络质量影响,成功率高;采用多任务异步上传,多任务对文件块分别上传,任务间互不影响,在网络条件容许情况下上传速率大大提升。
附图说明
图1显示为本发明客户端侧之一种文件上传方法的流程图。
图2显示为本发明客户端侧之每个任务上传文件块的流程图。
图3显示为本发明客户端侧之确认所上传的文件是否成功的流程图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于重庆高略启达智慧城市信息技术有限公司,未经重庆高略启达智慧城市信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710404052.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种纺丝油剂及其制备方法
- 下一篇:一种高温直喷分散墨水的应用