[发明专利]一种基于内存分配的多线程上传优化方法有效
申请号: | 201811587000.0 | 申请日: | 2018-12-25 |
公开(公告)号: | CN109547566B | 公开(公告)日: | 2020-12-22 |
发明(设计)人: | 张凌;郭超 | 申请(专利权)人: | 华南理工大学 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;G06F16/182;G06F16/13;H04L1/00 |
代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 冯炳辉 |
地址: | 510640 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 内存 分配 多线程 上传 优化 方法 | ||
1.一种基于内存分配的多线程上传优化方法,其特征在于,包括以下步骤:
1)获取当前操作用户的基础数据,包括上传权限信息和空间大小限制;
2)利用获取的信息对上传请求进行预处理,若上传空间不足或者权限不足则上传请求直接在客户端拒绝,否则继续下面操作;
3)根据上传文件大小判断是否需要切片多线程上传;
4)利用服务器当前空闲内存情况,将上传文件的临时文件存放到指定的缓存位置;其中,对上传请求进行处理:
当服务器空闲内存大于待上传文件大小时,将上传文件的临时文件存放到内存中;
当服务器空闲内存小于待上传文件大小时,将上传文件的临时文件存放到指定的磁盘位置中;
5)记录上传文件的元数据信息到数据库;
6)将缓存中的临时文件写入文件最终需要存放的磁盘位置;其中,对于不同的上传请求,有以下不同的处理:
上传请求是未进行分片的文件直接将临时文件写入最终需存放的位置;
上传请求是用户待上传文件的分片且不是最后一块分片时,将临时文件写入系统指定的上传文件分片存放的位置;
上传请求是用户待上传文件的分片且是最后一块分片时,将临时文件写入系统指定的上传文件分片存放的位置,然后融合文件分片,将融合后的文件写入文件最终需要存放的位置,删除文件分片。
2.根据权利要求1所述的一种基于内存分配的多线程上传优化方法,其特征在于:在步骤1)中,所述基础数据是指要进行上传文件操作的用户在系统中的权限信息、已使用空间大小、总空间大小限制和单文件大小限制,所述权限信息包括对指定位置是否有上传权限、下载权限和删除权限,所述上传权限指的是能够上传文件,所述下载权限指的是能够下载指定的文件,所述删除权限指的是能够删除文件;所述总空间大小限制指的是系统分配给用户的所有文件存储空间的总的大小限制;所述已使用空间大小指的是用户已经上传的所有文件的大小总和;所述单文件大小限制指的是系统针对上传的单个文件大小的限制。
3.根据权利要求1所述的一种基于内存分配的多线程上传优化方法,其特征在于:在步骤2)中,根据待上传文件的大小在客户端进行预处理,将权限判断与大小限制判断提前到请求方,进行控制转移,避免无效的上传请求占用带宽,包括:将不具有上传权限的上传请求拒绝、将待上传文件大小大于单文件大小限制的上传请求拒绝、将待上传文件大小大于剩余空间的上传请求拒绝。
4.根据权利要求1所述的一种基于内存分配的多线程上传优化方法,其特征在于:在步骤3)中,根据待上传文件大小判断是否需要进行分片操作,当待上传文件大小小于2MB时,不进行分片操作;当文件大小超过2MB时,将文件切片为2MB大小的文件块再依次上传,若某一块分片上传失败后从上次上传成功的分片后面继续开始上传。
5.根据权利要求1所述的一种基于内存分配的多线程上传优化方法,其特征在于:在步骤5)中,对上传文件进行CRC校验,将校验无误的记录上传文件的元数据信息保存到数据库记录中,其中,所述元数据信息包括上传请求的上传者、文件名字、上传目录和上传时间;若校验失败直接返回客户端文件分片校验失败。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学,未经华南理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811587000.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:富媒体信息发送、接收方法及终端设备和存储介质
- 下一篇:代理连接方法和装置