CN114466004A - 一种文件传输方法、系统、电子设备及存储介质 - Google Patents
一种文件传输方法、系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114466004A CN114466004A CN202210297444.0A CN202210297444A CN114466004A CN 114466004 A CN114466004 A CN 114466004A CN 202210297444 A CN202210297444 A CN 202210297444A CN 114466004 A CN114466004 A CN 114466004A
- Authority
- CN
- China
- Prior art keywords
- file
- fragments
- unique
- server
- identifier
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000005540 biological transmission Effects 0.000 title abstract description 18
- 239000012634 fragment Substances 0.000 claims abstract description 160
- 238000004422 calculation algorithm Methods 0.000 claims description 38
- 238000004590 computer program Methods 0.000 claims description 6
- 238000013467 fragmentation Methods 0.000 claims description 2
- 238000006062 fragmentation reaction Methods 0.000 claims description 2
- 230000000977 initiatory effect Effects 0.000 claims description 2
- 230000002829 reductive effect Effects 0.000 abstract description 9
- 230000002452 interceptive effect Effects 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 3
- 230000000670 limiting effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 239000000969 carrier Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种文件传输方法、系统、电子设备及存储介质,所述方法包括:通过客户终端,获得需要上传的文件以及文件的文件唯一标识;由所述客户终端,添加文件唯一标识至文件的上传请求中;由所述客户终端,将文件进行分片,获得文件的多个分片,并发起所述上传请求以上传所述多个分片;其中,多个分片中均具有文件唯一标识;以及由服务器集群,获取上传请求,并根据文件唯一标识,接收并存储多个分片至服务器集群中的一个服务器。通过计算文件的文件唯一标识,在通过同一服务器接收具有相同文件唯一标识的多个分片,降低了服务器合并文件所产生的交互资源的消耗,提高了集群环境下文件分片合并的效率。
Description
技术领域
本申请涉及文件传输领域,具体而言,涉及一种文件传输方法、系统、电子设备及存储介质。
背景技术
文件上传是业务中经常涉及且尤为重要的交互场景,为了实现客户终端能够向服务器上传文件,目前的文件上传方法,上传效率较低,若文件数据较大,或者网络条件较差时,通常需要较长的上传时间,丢包重传的概率较大,且现有的文件上传方法在文件上传完成后,对文件的处理,不能快速使用该文件。
发明内容
本发明实施例的目的在于一种文件传输方法、系统、电子设备及存储介质,可适用于集群环境下的文件分片的上传及合并。计算文件的文件唯一标识,将文件分片,同一文件的多个文件分片均具有文件唯一标识,将多个分片上传至服务集群中同一服务器,由同一服务器接收并存储具有相同文件唯一标识的多个分片,提高服务器承载能力以及可用性。
第一方面,本申请实施例提供了一种文件传输方法,包括:通过客户终端,获得需要上传的文件以及文件的文件唯一标识;由客户终端,添加文件唯一标识至文件的上传请求中;由客户终端,将文件进行分片,获得文件的多个分片,并发起上传请求;其中,多个分片中均具有文件唯一标识;以及由服务器集群,获取上传请求,并根据文件唯一标识,接收并存储多个分片至服务器集群中的一个服务器。
在上述的实现过程中,获得文件的文件唯一标识,将文件唯一标识添加至文件的上传请求中,再将文件进行分片,获得多个分片均具有文件唯一标识,再根据文件唯一标识将多个分片上传至服务器集群中的同一个服务器。通过同一服务器接收具有相同文件唯一标识的多个分片,降低了服务器合并文件所产生的交互资源的消耗,提高了集群环境下文件分片合并的效率。
可选地,在本申请实施例中,其中,服务器集群包括路由服务器和应用服务器;由服务器集群,获取上传请求,并根据文件唯一标识,接收并存储多个分片至服务器集群中的一个服务器,包括:由路由服务器,获取上传请求,并根据文件唯一标识,通过查询算法,查询对应的应用服务器,将上传请求转发至应用服务器;其中,查询算法包括一致性哈希算法;由应用服务器,根据文件唯一标识,接收并存储上传请求对应的多个分片。
在上述的实现过程中,由路由服务器获取上传请求,读取上传请求中的文件唯一标识,根据文件唯一标识,将上传请求转发到计算出的应用服务器上。通过一致性哈希算法计算文件唯一标识和应用服务器的对应关系,将具有相同文件唯一标识的分片上传至同一个应用服务器;并且通过一致性哈希算法,有效地减少了当服务器数量发生变化时,文件唯一标识和服务器资源的对应关系,降低了服务器集群中服务器节点的变化产生的影响。
可选地,在本申请实施例中,其中,文件分片包括第一文件分片和后续文件分片;由应用服务器,根据文件唯一标识,接收并存储上传请求对应的多个分片,包括:若应用服务器接收到第一文件分片,将第一文件分片对应的文件唯一标识存储至应用服务器内存,并将第一文件分片存储至应用服务器的临时目录;若应用服务器接收到后续文件分片,则判断后续文件分片对应的文件唯一标识是否存储在应用服务器内存中,若是,将后续文件分片存储至应用服务器的临时目录,若否,将后续文件分片对应的文件的多个分片重新上传至路由服务器。
在上述的实现过程中,若应用服务器接收到第一个文件分片,则将第一个文件分片对应的文件唯一标识存储至服务器内存,即将文件唯一标识和该应用服务器的对应关系存储至应用服务器内存中,并将第一文件分片存储至应用服务器的临时目录;若应用服务器接收到后续文件分片,且该后续文件分片的文件唯一标识不在该应用服务器内存中,则将后续文件分配对应的文件分片重新上传,由路由服务器将上传请求重新路由至其他服务器。
可选地,在本申请实施例中,其中,由服务器集群,获取上传请求,并根据文件唯一标识,接收并存储多个分片至服务器集群中的一个服务器,包括:若服务器接收到预设数量的文件的分片,则进行一次合并处理,获得合并文件;将合并文件写入存储桶中文件的尾部。
在上述的实现过程中,同一文件的文件分片上传至同一服务器,服务器接收到预设数量的文件分片,进行合并,并将合并文件写入存储桶中文件的尾部,降低了服务器合并文件所产生的交互资源的消耗,提高了集群环境下文件分片合并的效率。
可选地,在本申请实施例中,其中,通过客户终端,获得需要上传的文件以及文件的文件唯一标识,包括:通过客户终端,获得需要上传的文件,根据文件的内容通过摘要算法计算文件的文件唯一标识。
在上述的实现过程中,相同内容的文件通过摘要算法计算出的文件唯一标识是相同的,可通过文件唯一标识进行文件内容得比对,并且同一文件唯一标识的文件分片上传至同一服务器,避免多用户上传相同内容的文件时上传多次,且上传于不同的服务器,造成的资源浪费。
可选地,在本申请实施例中,其中,通过客户终端,获得需要上传的文件以及文件的文件唯一标识,包括:通过客户终端,判断所述需要上传的文件是否为影像类文件,若是,则通过对所述影像类文件的文件头部进行摘要算法,计算获得所述影像类文件的文件唯一标识。
在上述的实现过程中,在计算影像类文件的文件唯一标识只需要对文件头部进行摘要算法,即可保证文件的唯一性。
可选地,在本申请实施例中,其中,由客户终端,添加文件唯一标识至文件的上传请求中,包括:由客户终端,将文件唯一标识添加进文件的上传请求的请求头、请求体或统一资源定位符中。
在上述的实现过程中,文件唯一标识可以通过上传请求的请求头、请求体或统一资源定位符等载体进行传输,通过路由服务器进行识别。
第二方面,本申请实施例还提供了一种文件传输系统,包括:具有服务器集群的接收模块、以及包括获取模块、添加模块以及分片模块的客户终端;获取模块,用于获得需要上传的文件以及文件的文件唯一标识;添加模块,用于添加文件唯一标识至文件的上传请求中;分片模块,用于将文件进行分片,获得文件的多个分片,并发起上传请求以上传多个分片;其中,多个分片中均具有文件唯一标识;以及接收模块,用于获取上传请求,并根据文件唯一标识,接收并存储多个分片至服务器集群中的一个服务器。
可选地,在本申请实施例中,文件传输系统,其中,接收模块还用于,由路由服务器,获取上传请求,并根据文件唯一标识,通过查询算法,查询对应的应用服务器,将上传请求转发至应用服务器;其中,查询算法包括一致性哈希算法;由应用服务器,根据文件唯一标识,接收并存储上传请求对应的多个分片。
可选地,在本申请实施例中,文件传输系统,其中,接收模块还用于,若应用服务器接收到第一文件分片,将第一文件分片对应的文件唯一标识存储至应用服务器内存,并将第一文件分片存储至应用服务器的临时目录;若应用服务器接收到后续文件分片,则判断后续文件分片对应的文件唯一标识是否存储在应用服务器内存中,若是,将后续文件分片存储至应用服务器的临时目录,若否,将后续文件分片对应的文件的多个分片重新上传至路由服务器。
可选地,在本申请实施例中,文件传输系统,其中,接收模块还用于,若服务器接收到预设数量的文件的分片,则进行一次合并处理,获得合并文件;将合并文件写入存储桶中文件的尾部。
可选地,在本申请实施例中,文件传输系统,其中,获取模块还用于,通过客户终端,获得需要上传的文件,根据文件的内容通过摘要算法计算文件的文件唯一标识。
可选地,在本申请实施例中,文件传输系统,其中,获取模块还用于,通过客户终端,判断需要上传的文件为影像类文件,若是,则通过对影像类文件的文件头部进行摘要算法,计算获得影像类文件的文件唯一标识。
可选地,在本申请实施例中,文件传输系统,其中,添加模块还用于,由客户终端,将文件唯一标识添加进文件的上传请求的请求头、请求体或统一资源定位符中。
第三方面,本申请实施例还提供了一种电子设备,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,机器可读指令被处理器执行时执行如上面描述的方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上面描述的方法。
采用本申请提供的文件传输方法、系统、电子设备及存储介质,通过摘要算法计算文件的文件唯一标识,将文件进行分片,多个分片中均具有文件唯一标识,通过一致性哈希算法,计算服务器集群中对应的应用服务器,将多个分片上传至同一应用服务器,并将文件唯一标识存储至服务器,避免同一文件上传至多个服务器,降低了合并文件时所产生的I/O消耗,支持集群部署,并将数据存储在服务端,提高了数据可靠性。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请的第一种实施例提供的一种文件传输方法的流程示意图;
图2为本申请的第二种实施例提供的一种文件传输方法的流程示意图;
图3为本申请的实施例提供的文件传输系统的结构示意图;
图4为本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合附图对本申请技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本申请的技术方案,因此只作为示例,而不能以此来限制本申请的保护范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。
在本申请实施例的描述中,技术术语“第一”、“第二”等仅用于区别不同对象,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量、特定顺序或主次关系。在本申请实施例的描述中,“多个”的含义是两个以上,除非另有明确具体的限定。
请参见图1示出的本申请的第一种实施例提供的一种文件传输方法的流程示意图。
步骤S110:通过客户终端,获得需要上传的文件以及文件的文件唯一标识。
上述步骤S110的实施方式包括:获得需要上传的文件,文件可以由可安装程序、网页程序等客户终端进行获取并上传,上传的文件可以为Excel表格数据、影音文件等。文件的文件唯一标识可以根据文件内容通过计算获得,文件唯一标识可以看作文件的唯一指纹,内容完全相同的文件,通过计算获得文件唯一标识的值也相同。应当理解的,因文件内容与文件唯一标识的唯一对应关系,则可以通过文件唯一标识对比两个文件是否相同。
在步骤S110之后,执行步骤S120:由客户终端,添加文件唯一标识至文件的上传请求中。可以将计算获得的文件唯一标识添加进上传请求的请求参数中,具体地,由客户终端,在上传请求头中加入“file-id”参数,“file-id”参数值为该文件的文件唯一标识。其中,文件唯一标识也可以通过上传请求的请求体、统一资源定位符等载体进行传输,传输至服务器。
在步骤S120之后,执行步骤S130:由客户终端,将文件进行分片,获得文件的多个分片,并发起上传请求;其中,多个分片中均具有文件唯一标识。上述步骤S130的实施方式包括:由客户终端将文件进行分片,获得文件的多个分片,并通过客户终端对多个分片进行上传,即对服务器按分片顺序串行或并行发起上传请求,若文件分片过多,可以通过节流每次只上传预设数量的分片。
在步骤S130之后,执行步骤S140:由服务器集群,获取上传请求,并根据文件唯一标识,接收并存储多个分片至服务器集群中的一个服务器。
上述步骤S140的实施方式包括:由服务器集群中的路由服务器获得上传请求,上传请求中包括文件唯一标识,根据文件唯一标识,在服务器集群中确定对应的服务器。由服务器集群对于接收到的文件分片进行处理,处理包括对文件分片进行识别、接收以及存储至应用服务器的临时目录中。需要说明的是,具有同一文件唯一标识的多个分片上传于同一服务器。
在上述的实现过程中,获得文件的文件唯一标识,将文件唯一标识添加至文件的上传请求中,再将文件进行分片,获得多个分片均具有文件唯一标识,再根据文件唯一标识将多个分片上传至服务器集群中的同一个服务器。通过同一服务器接收具有相同文件唯一标识的多个分片,降低了服务器合并文件所产生的交互资源的消耗,提高了集群环境下文件分片合并的效率。
可选地,在本申请实施例中,其中,服务器集群包括路由服务器和应用服务器;由服务器集群,获取上传请求,并根据文件唯一标识,接收并存储多个分片至服务器集群中的一个服务器,包括:由路由服务器,获取上传请求,并根据文件唯一标识,通过查询算法,查询对应的应用服务器,将上传请求转发至应用服务器;其中,查询算法包括一致性哈希算法;由应用服务器,根据文件唯一标识,接收并存储上传请求对应的多个分片。
上述步骤的实施方式例如:路由服务器收到请求,获取上传请求参数中的文件唯一标识,根据文件唯一标识,通过查询算法,查询该上传请求对应的应用路由器,并将上传请求转发至应用服务器,即获得文件唯一标识与服务器集群中应用服务器的对应关系。应用服务器根据接收到的分片的文件唯一标识,接收并存储上传请求对应的多个分片。其中,所述查询算法可以为一致性哈希算法、任意哈希算法、轮询、随机指定等算法以及能够实现集群中服务器负载均衡的任意方式。
可以理解地,上述根据文件唯一标识,在服务器集群中确定对应的一个服务器,还可以直接通过应用服务器端进行文件唯一标识的识别,接收并存储上传请求对应的多个分片。具体地,应用服务器接收上传请求,识别上传请求中的文件唯一标识,根据文件唯一标识,接收并存储上传请求对应的多个分片。
在上述的实现过程中,由路由服务器获取上传请求,读取上传请求中的文件唯一标识,根据文件唯一标识,将上传请求转发到计算出的应用服务器上。通过一致性哈希算法计算文件唯一标识和应用服务器的对应关系,将具有相同文件唯一标识的分片上传至同一个应用服务器;并且通过一致性哈希算法降低了服务器集群中服务器节点的变化产生的影响。
可选地,在本申请实施例中,其中,文件分片包括第一文件分片和后续文件分片;由应用服务器,根据文件唯一标识,接收并存储上传请求对应的多个分片,包括:若应用服务器接收到第一文件分片,将第一文件分片对应的文件唯一标识存储至应用服务器内存,并将第一文件分片存储至应用服务器的临时目录;若应用服务器接收到后续文件分片,则判断后续文件分片对应的文件唯一标识是否存储在应用服务器内存中,若是,将后续文件分片存储至应用服务器的临时目录,若否,将后续文件分片对应的文件的多个分片重新上传至路由服务器。
上述步骤的实施方式例如:应用服务器接收到文件分片后,判断文件分片为第一文件分片还是后续文件分片。若应用服务器接收到第一个文件分片,则将第一个文件分片对应的文件唯一标识存储至服务器内存,即将文件唯一标识和该应用服务器的对应关系存储至应用服务器内存中,并将第一文件分片存储至应用服务器的临时目录。将文件与应用服务器的对应关系存储于服务器端,用户无法接触,避免服务器地址存储在浏览器中,因为浏览器页面刷新、重启、删除浏览记录或其他情况导致的数据丢失,提高了数据的可靠性。
若应用服务器接收到后续文件分片,且该后续文件分片的文件唯一标识不在该应用服务器内存中,则将后续文件分配对应的文件分片重新上传,由路由服务器将上传请求重新路由至其他服务器。可以理解的,若后续文件分片的文件唯一标识不在该应用服务器中,也可以不对文件分片进行重新上传,而通过其他方式将上传请求重新转发至其他服务器,由其他服务器将该文件唯一标识对应的所有文件分片进行处理。
可选地,在本申请实施例中,其中,由服务器集群,获取上传请求,并根据文件唯一标识,接收并存储多个分片至服务器集群中的一个服务器,包括:若服务器接收到预设数量的文件的分片,则进行一次合并处理,获得合并文件;将合并文件写入存储桶中文件的尾部。
上述步骤的实施方式例如:若服务器接收到预设数量的文件的分片,则进行一次合并处理,其中,预设数量为未进行合并的分片数量。具体地,若服务器接受到并且未进行合并的分片数量对预设数量取模后为零,则进行一次合并处理,将接收到的分片写入存储桶中文件的尾部。在上述的实现过程中,同一文件的文件分片上传至同一服务器,服务器接收到预设数量的文件分片,进行合并,并将合并文件写入存储桶中文件的尾部,降低了服务器合并文件所产生的交互资源的消耗,提高了集群环境下文件分片合并的效率。
可选地,在本申请实施例中,其中,通过客户终端,获得需要上传的文件以及文件的文件唯一标识,包括:通过客户终端,获得需要上传的文件,根据文件的内容通过摘要算法计算文件的文件唯一标识。
上述步骤的实施方式例如:通过客户终端,获得需要上传的文件,根据文件的内容通过信息摘要算法,利用函数将任意长度的数据转换为一个长度固定的数据串,数据串可以看作文件的唯一指纹或数字签名,即文件唯一标识,其中,摘要算法包括MD5。
在上述的实现过程中,相同内容的文件通过摘要算法计算出的文件唯一标识是相同的,可通过文件唯一标识进行文件内容得比对,并且同一文件唯一标识的文件分片上传至同一服务器,避免多用户上传相同内容的文件时上传多次,且上传于不同的服务器,造成的资源浪费。
可选地,在本申请实施例中,其中,通过客户终端,获得需要上传的文件以及文件的文件唯一标识,包括:通过客户终端,判断需要上传的文件是否为影像类文件,若是,则通过对影像类文件的文件头部进行摘要算法,计算获得影像类文件的文件唯一标识。上述步骤的实施方式例如:影像类文件通常头部有时间、地点、设备等相关信息,因此只需要对文件头部进行摘要算法,即可获取影像类文件的文件唯一标识。
可选地,在本申请实施例中,其中,由客户终端,添加文件唯一标识至文件的上传请求中,包括:由客户终端,将文件唯一标识添加进文件的上传请求的请求头、请求体或统一资源定位符中。在上述的实现过程中,文件唯一标识可以通过上传请求的请求头、请求体或统一资源定位符等载体进行传输,通过路由服务器进行识别。
请参见图2示出的本申请的第二种实施例提供的一种文件传输方法的流程示意图。
如图2所示,在一个优选实施例中,文件传输包括,获得需要上传的文件,通过可安装程序以及网页程序等客户终端,利用MD5等摘要算法计算文件的文件唯一标识;客户终端对文件进行分片,发起上传请求,并在上传请求中添加文件唯一标识;路由服务器接收到上传请求,根据文件唯一标识,使用摘要值将上传请求转发至对应的应用服务器。
应用服务器判断接收到的分片是否为文件的第一个分片,若是,将摘要值写入当前服务器,即文件唯一标识存储至当前应用服务器的服务器内存中,并将分片存储至应用服务器的临时目录中;若否,则判断当前应用服务器是否有文件唯一标识对应的摘要值,即当前应用服务器内存中是否存储了该文件分片对应的文件唯一标识的摘要值,若当前服务器内存中已经存储了所述文件唯一标识,则将接收到的分片存储至应用服务器的临时目录中,若当前服务器内存中没有存储所述文件唯一标识,则通知客户终端重新上传该文件对应的所有分片。
应用服务器每收到一定数量的分片,判断已接收且未合并的分片是否满足合并条件,若是,进行一次合并处理,并将合并后的分片写入存储桶文件尾部。具体例如,将已接收且未合并的分片数对5取模后为0,则进行合并,将已合并分片写入存储桶的文件尾部。
请参见图3示出的本申请实施例提供的文件传输系统的结构示意图;本申请实施例提供了一种文件传输系统200,包括:具有服务器集群的接收模块240、以及包括获取模块210、添加模块220以及分片模块230的客户终端;
获取模块210,用于获得需要上传的文件以及文件的文件唯一标识;
添加模块220,用于添加文件唯一标识至文件的上传请求中;
分片模块230,用于将文件进行分片,获得文件的多个分片,并发起上传请求以上传多个分片;其中,多个分片中均具有文件唯一标识;以及
接收模块240,用于获取上传请求,并根据文件唯一标识,接收并存储多个分片至服务器集群中的一个服务器。
应理解的是,该系统与上述的文件传输方法实施例对应,能够执行上述方法实施例涉及的各个步骤,该系统具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。该系统包括至少一个能以软件或固件(firmware)的形式存储于存储器中或固化在系统的操作系统(operating system,OS)中的软件功能模块。
请参见图4示出的本申请实施例提供的电子设备的结构示意图。本申请实施例提供的一种电子设备300,包括:处理器310和存储器320,存储器320存储有处理器310可执行的机器可读指令,机器可读指令被处理器310执行时执行如上的方法。
本申请实施例还提供了一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上的方法。
其中,存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Red-Only Memory,简称PROM),只读存储器(Read-OnlyMemory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
本申请实施例所提供的几个实施例中,应该理解到,所揭露的系统和方法,也可以通过其他的方式实现。以上所描述的系统实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请实施例的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请实施例各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
以上的描述,仅为本申请实施例的可选实施方式,但本申请实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请实施例的保护范围之内。
Claims (10)
1.一种文件传输方法,其特征在于,包括:
通过客户终端,获得需要上传的文件以及所述文件的文件唯一标识;
由所述客户终端,添加所述文件唯一标识至所述文件的上传请求中;
由所述客户终端,将所述文件进行分片,获得所述文件的多个分片,并发起所述上传请求以上传所述多个分片;其中,所述多个分片中均具有所述文件唯一标识;以及
由服务器集群,获取所述上传请求,并根据所述文件唯一标识,接收并存储所述多个分片至所述服务器集群中的一个服务器。
2.根据权利要求1所述的方法,其特征在于,其中,服务器集群包括路由服务器和应用服务器;所述由服务器集群,获取所述上传请求,并根据所述文件唯一标识,接收并存储所述多个分片至所述服务器集群中的一个服务器,包括:
由所述路由服务器,获取所述上传请求,并根据所述文件唯一标识,通过查询算法,查询对应的应用服务器,将所述上传请求转发至所述应用服务器;其中,所述查询算法包括一致性哈希算法;
由所述应用服务器,根据文件唯一标识,接收并存储所述上传请求对应的所述多个分片。
3.根据权利要求2所述的方法,其特征在于,其中,所述多个分片包括第一文件分片和后续文件分片;所述由应用服务器,根据文件唯一标识,接收并存储所述上传请求对应的所述多个分片,包括:
若所述应用服务器接收到所述第一文件分片,将所述第一文件分片对应的文件唯一标识存储至应用服务器内存,并将所述第一文件分片存储至所述应用服务器的临时目录;
若所述应用服务器接收到所述后续文件分片,则判断所述后续文件分片对应的所述文件唯一标识是否存储在所述应用服务器内存中,若是,将所述后续文件分片存储至所述应用服务器的临时目录,若否,将所述后续文件分片对应的文件的多个分片重新上传至所述路由服务器。
4.根据权利要求1所述的方法,其特征在于,其中,所述由服务器集群,获取所述上传请求,并根据所述文件唯一标识,接收并存储所述多个分片至所述服务器集群中的一个服务器,包括:
若所述服务器接收到预设数量的所述文件的分片,则进行一次合并处理,获得合并文件;
将所述合并文件写入存储桶中所述文件的尾部。
5.根据权利要求1所述的方法,其特征在于,其中,所述通过客户终端,获得需要上传的文件以及所述文件的文件唯一标识,包括:
通过客户终端,获得所述需要上传的文件,根据所述文件的内容通过摘要算法计算所述文件的文件唯一标识。
6.根据权利要求1所述的方法,其特征在于,其中,所述通过客户终端,获得需要上传的文件以及所述文件的文件唯一标识,包括:
通过客户终端,判断所述需要上传的文件是否为影像类文件,若是,则通过对所述影像类文件的文件头部进行摘要算法,计算获得所述影像类文件的文件唯一标识。
7.根据权利要求1所述的方法,其特征在于,其中,所述由所述客户终端,添加所述文件唯一标识至所述文件的上传请求中,包括:
由所述客户终端,将所述文件唯一标识添加进所述文件的上传请求的请求头、请求体或统一资源定位符中。
8.一种文件传输系统,其特征在于,所述文件传输系统包括:具有服务器集群的接收模块、以及包括获取模块、添加模块以及分片模块的客户终端;
所述获取模块,用于获得需要上传的文件以及所述文件的文件唯一标识;
所述添加模块,用于添加所述文件唯一标识至所述文件的上传请求中;
所述分片模块,用于将所述文件进行分片,获得所述文件的多个分片,并发起所述上传请求以上传所述多个分片;其中,所述多个分片中均具有所述文件唯一标识;以及
所述接收模块,用于获取所述上传请求,并根据所述文件唯一标识,接收并存储所述多个分片至所述服务器集群中的一个服务器。
9.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述机器可读指令被所述处理器执行时执行如权利要求1至7任一所述的方法。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至7任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210297444.0A CN114466004A (zh) | 2022-03-24 | 2022-03-24 | 一种文件传输方法、系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210297444.0A CN114466004A (zh) | 2022-03-24 | 2022-03-24 | 一种文件传输方法、系统、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114466004A true CN114466004A (zh) | 2022-05-10 |
Family
ID=81416978
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210297444.0A Pending CN114466004A (zh) | 2022-03-24 | 2022-03-24 | 一种文件传输方法、系统、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114466004A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116028444A (zh) * | 2022-12-30 | 2023-04-28 | 北京明朝万达科技股份有限公司 | 文件指纹生成方法、装置、系统、电子设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020184327A1 (en) * | 2001-05-11 | 2002-12-05 | Major Robert Drew | System and method for partitioning address space in a proxy cache server cluster |
CN102833294A (zh) * | 2011-06-17 | 2012-12-19 | 阿里巴巴集团控股有限公司 | 基于云存储的文件处理方法、系统及服务器集群系统 |
US20190332608A1 (en) * | 2017-02-17 | 2019-10-31 | Alibaba Group Holding Limited | Data processing method and device |
CN111355791A (zh) * | 2020-02-25 | 2020-06-30 | 腾讯科技(深圳)有限公司 | 文件传输方法、装置、计算机设备和存储介质 |
CN111404990A (zh) * | 2020-02-14 | 2020-07-10 | Oppo(重庆)智能科技有限公司 | 文件传输方法、装置、客户端及存储介质 |
CN111600799A (zh) * | 2020-05-20 | 2020-08-28 | 金蝶蝶金云计算有限公司 | 分片路由方法、服务器及计算机存储介质 |
CN113055455A (zh) * | 2021-03-09 | 2021-06-29 | 中国联合网络通信集团有限公司 | 文件上传方法及设备 |
CN113568884A (zh) * | 2021-09-26 | 2021-10-29 | 武汉四通信息服务有限公司 | 一种文件管理方法、装置、电子设备及存储介质 |
-
2022
- 2022-03-24 CN CN202210297444.0A patent/CN114466004A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020184327A1 (en) * | 2001-05-11 | 2002-12-05 | Major Robert Drew | System and method for partitioning address space in a proxy cache server cluster |
CN102833294A (zh) * | 2011-06-17 | 2012-12-19 | 阿里巴巴集团控股有限公司 | 基于云存储的文件处理方法、系统及服务器集群系统 |
US20190332608A1 (en) * | 2017-02-17 | 2019-10-31 | Alibaba Group Holding Limited | Data processing method and device |
CN111404990A (zh) * | 2020-02-14 | 2020-07-10 | Oppo(重庆)智能科技有限公司 | 文件传输方法、装置、客户端及存储介质 |
CN111355791A (zh) * | 2020-02-25 | 2020-06-30 | 腾讯科技(深圳)有限公司 | 文件传输方法、装置、计算机设备和存储介质 |
CN111600799A (zh) * | 2020-05-20 | 2020-08-28 | 金蝶蝶金云计算有限公司 | 分片路由方法、服务器及计算机存储介质 |
CN113055455A (zh) * | 2021-03-09 | 2021-06-29 | 中国联合网络通信集团有限公司 | 文件上传方法及设备 |
CN113568884A (zh) * | 2021-09-26 | 2021-10-29 | 武汉四通信息服务有限公司 | 一种文件管理方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
张文俊; 倪受春; 许春明;: "《数字新媒体版权管理》", 中国电力出版社, pages: 194 - 87 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116028444A (zh) * | 2022-12-30 | 2023-04-28 | 北京明朝万达科技股份有限公司 | 文件指纹生成方法、装置、系统、电子设备及存储介质 |
CN116028444B (zh) * | 2022-12-30 | 2023-10-20 | 北京明朝万达科技股份有限公司 | 文件指纹生成方法、装置、系统、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107819828B (zh) | 数据传输方法、装置、计算机设备和存储介质 | |
US10909110B1 (en) | Data retrieval from a distributed data storage system | |
CN107332876B (zh) | 区块链状态的同步方法及装置 | |
CN108683668B (zh) | 内容分发网络中的资源校验方法、装置、存储介质及设备 | |
CN110737668B (zh) | 数据存储方法、数据读取方法、相关设备及介质 | |
US11190576B2 (en) | File distribution and download method, distribution server, client terminal and system | |
US8954793B2 (en) | Method and a storage server for data redundancy | |
CN109905479B (zh) | 文件传输方法和装置 | |
CN111708743A (zh) | 文件存储管理方法、文件管理客户端及文件存储管理系统 | |
CN112153170B (zh) | 访问服务器的方法、装置、设备及存储介质 | |
CN111262822B (zh) | 文件存储方法、装置、区块链节点和系统 | |
CN108810055B (zh) | 一种大文件传输方法及装置 | |
CN116578746A (zh) | 对象去重方法及装置 | |
CN113273163A (zh) | 文件上传方法、文件下载方法和文件管理装置 | |
CN114466004A (zh) | 一种文件传输方法、系统、电子设备及存储介质 | |
CN111309696A (zh) | 日志处理方法及装置、电子设备、可读介质 | |
CN112866406B (zh) | 一种数据存储方法、系统、装置、设备及存储介质 | |
US10853892B2 (en) | Social networking relationships processing method, system, and storage medium | |
CN108965463B (zh) | 一种文件传输方法、装置和系统 | |
CN116756108A (zh) | 一种文件同步方法、系统、装置及可读存储介质 | |
CN114124797B (zh) | 一种服务器路由方法、装置、电子设备及存储介质 | |
CN110555020B (zh) | 一种映射关系建立、数据查询方法、装置及设备 | |
CN109992447B (zh) | 数据复制方法、装置及存储介质 | |
CN108173892B (zh) | 云端镜像操作方法和装置 | |
CN111291207B (zh) | 图片存储方法、装置及服务器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220510 |