[发明专利]可集群并支持多用户同时上传的文件传输方法和系统在审
申请号: | 201510474496.0 | 申请日: | 2015-08-05 |
公开(公告)号: | CN105187489A | 公开(公告)日: | 2015-12-23 |
发明(设计)人: | 罗文 | 申请(专利权)人: | 深圳联友科技有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 深圳市顺天达专利商标代理有限公司 44217 | 代理人: | 高占元 |
地址: | 518031 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 集群 支持 多用户 同时 上传 文件传输 方法 系统 | ||
1.一种可集群并支持多用户同时上传的文件传输方法,基于文件传输系统实现,其特征在于,该文件传输系统包括用户层、接入层、存储层,所述用户层包括多个客户端,所述接入层包括一个LVS模块和多个文件传输模块,所述存储层包括集群部署的多个文件存储模块;
所述方法包括:
S1、用户层中的客户端发送上传请求给接入层的LVS模块,所述上传请求用于请求向存储层上传新文件;
S2、接入层中的LVS模块选择一个文件传输模块处理该上传请求,文件传输模块将该新文件切分为多个文件块,并返回上传响应给对应的客户端;
S3、客户端在接收到上传响应后,发送文件块上传请求给该文件传输模块;
S4、文件传输模块基于未上传的文件块,返回写文件块响应给对应的客户端;
S5、客户端根据接收的写文件块响应,发送对应的文件块给文件传输模块;
S6、文件传输模块选择存储层中的一个文件存储模块存储该文件块,并在文件块存储完毕后转步骤S4继续下一个文件块的上传直至所有的文件块都上传至存储层。
2.根据权利要求1所述的可集群并支持多用户同时上传的文件传输方法,其特征在于,所述步骤S2中还包括:所述文件传输模块将每个文件块切分为多个更小的文件块;所述步骤S4还包括:文件传输模块根据客户端的网络类型和设备类型,经由所述写文件块响应设定该客户端单次上传的较小文件块的数量。
3.根据权利要求2所述的可集群并支持多用户同时上传的文件传输方法,其特征在于,每个文件块包括三种状态:未上传、正在上传、已上传,步骤S2中首次将文件切分时将所有文件块的状态都设置为未上传,
所述步骤S4包括:从第1块较小的文件块开始顺序查找直到找到状态为未上传的一个或者多个文件块,将该一个或者多个文件块的位置信息包含在写文件块响应中下发,并将该一个或者多个文件块的状态设置为正在上传,如果某个较大的文件块中的存在状态为正在上传的较小的文件块,则将该较大的文件块的状态设置为正在上传;
所述步骤S6中,在文件块存储完毕时将该文件块的状态设置为已上传,如果某个较大的文件块中的所有的较小的文件块的状态均为已上传,则将该较大的文件块的状态设置为已上传,如果所有的较大的文件块的状态都为已上传,则发送上传完毕指令给对应的客户端,结束。
4.根据权利要求1所述的可集群并支持多用户同时上传的文件传输方法,其特征在于,所述步骤S6所述的选择存储层中的一个文件存储模块存储该文件块包括:将所述存储层中的文件存储模块顺序编号为1-n,n为正整数;将客户端提交的文件MD5值经过哈希算法整形化后的值对n取模,并将取模的结果记为k;选择第k个文件存储模块存储文件块。
5.根据权利要求1所述的可集群并支持多用户同时上传的文件传输方法,其特征在于,所述步骤S2包括:
S20、LVS模块接收到的上传请求后,根据负载均衡算法确定一个文件传输模块,并将该上传请求转发至该文件传输模块;
S21、该文件传输模块判断所述上传请求所对应的新文件是否已上传;
S22、如果新文件已上传,则发送上传完毕指令给对应的客户端,结束;
S23、如果新文件未上传或正在上传,则返回所述上传响应给对应的客户端。
6.一种可集群并支持多用户同时上传的文件传输系统,其特征在于,包括:
用户层,包括多个客户端;
接入层,包括一个LVS模块和多个文件传输模块;
存储层,包括集群部署的多个文件存储模块;
所述客户端用于发送上传请求给所述LVS模块,所述上传请求用于请求向存储层上传新文;所述LVS模块用于选择一个文件传输模块处理该上传请求;文件传输模块用于将该新文件切分为多个文件块,并返回上传响应给对应的客户端;所述客户端还用于在接收到上传响应后,发送文件块上传请求给文件传输模块;文件传输模块还用于基于未上传的文件块返回写文件块响应给对应的客户端;客户端还用于根据接收的写文件块响应,发送对应的文件块给文件传输模块;文件传输模块还用于选择一个文件存储模块存储该文件块,并在文件块存储完毕后发送下一个写文件块响应至对应的客户端以继续下一个文件块的上传直至所有的文件块都上传至存储层。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳联友科技有限公司,未经深圳联友科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510474496.0/1.html,转载请声明来源钻瓜专利网。