CN110474992A - 一种文件传输方法、装置、设备及存储介质 - Google Patents

一种文件传输方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN110474992A
CN110474992A CN201910912885.5A CN201910912885A CN110474992A CN 110474992 A CN110474992 A CN 110474992A CN 201910912885 A CN201910912885 A CN 201910912885A CN 110474992 A CN110474992 A CN 110474992A
Authority
CN
China
Prior art keywords
file
independent
gauge outfit
subfile
source
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.)
Granted
Application number
CN201910912885.5A
Other languages
English (en)
Other versions
CN110474992B (zh
Inventor
白云峰
朱箫鸣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Wave Intelligent Technology Co Ltd
Original Assignee
Suzhou Wave Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Wave Intelligent Technology Co Ltd filed Critical Suzhou Wave Intelligent Technology Co Ltd
Priority to CN201910912885.5A priority Critical patent/CN110474992B/zh
Publication of CN110474992A publication Critical patent/CN110474992A/zh
Application granted granted Critical
Publication of CN110474992B publication Critical patent/CN110474992B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种文件传输方法,应用于目的端,该方法包括:接收源端发送的针对目标文件的传输请求,目标文件由表头文件和多个独立子文件构成,表头文件中包含独立子文件的相关信息;接收并保存表头文件;为每个独立子文件分配在目的端中的起始地址;接收并保存源端发送的每个独立子文件;更新表头文件中包含的独立子文件的相关信息。应用本申请实施例所提供的技术方案,目标文件按照表头文件和独立子文件进行模块化管理方式存储,便于管理,源端可调用多个线程并行传输多个独立子文件,而且,可以单独进行相应独立子文件的再传输,减少了传输时间,提高了文件传输效率。本申请还公开了一种文件传输装置、设备及存储介质,具有相应技术效果。

Description

一种文件传输方法、装置、设备及存储介质
技术领域
本申请涉及计算机应用技术领域,特别是涉及一种文件传输方法、装置、设备及存储介质。
背景技术
随着计算机技术和云计算技术的快速发展,各类数据文件逐渐增多,逐渐成为企业和社会关注的重要战略资源。随着大数据技术和云计算技术的紧密结合,物联网、移动互联网等新兴计算形态的出现,让大数据文件发挥出更大的影响力。
在实际业务运行过程中,总会有文件传输的需求,即将文件从一个服务器传输到另一个服务器。面对越来越庞大的数据资源,越来越大的单个数据文件,如何进行文件的管理和传输,以提高文件传输效率,是目前本领域技术人员急需解决的技术问题。
发明内容
本申请的目的是提供一种文件传输方法、装置、设备及存储介质,以提高文件传输效率。
为解决上述技术问题,本申请提供如下技术方案:
一种文件传输方法,应用于目的端,所述方法包括:
接收源端发送的针对目标文件的传输请求,所述目标文件由表头文件和多个独立子文件构成,所述表头文件中包含独立子文件的相关信息;
向所述源端返回接收确认信息,以使所述源端发送所述表头文件;
接收并保存所述表头文件;
根据所述表头文件中包含的独立子文件的相关信息,为每个独立子文件分配在所述目的端中的起始地址;
基于分配给每个独立子文件的起始地址,接收并保存所述源端发送的每个独立子文件,接收到的独立子文件为所述源端调用多个线程并发传输的;
更新所述表头文件中包含的独立子文件的相关信息。
在本申请的一种具体实施方式中,所述表头文件中还包含所述表头文件的初始校验值,在所述接收并保存所述表头文件之后、所述为每个独立子文件分配在所述目的端中的起始地址之前,还包括:
计算接收到的所述表头文件的实际校验值;
如果所述表头文件的实际校验值与所述表头文件的初始校验值相同,则执行所述为每个独立子文件分配在所述目的端中的起始地址的步骤。
在本申请的一种具体实施方式中,在所述更新所述表头文件中包含的独立子文件的相关信息之后,还包括:
更新所述表头文件中包含的所述表头文件的初始校验值。
在本申请的一种具体实施方式中,所述更新所述表头文件中包含的独立子文件的相关信息,包括:
更新所述表头文件中包含的独立子文件在所述目的端中的起始地址。
在本申请的一种具体实施方式中,所述表头文件中包含的独立子文件的相关信息包括每个独立子文件的初始校验值,所述基于分配给每个独立子文件的起始地址,接收并保存所述源端发送的每个独立子文件,包括:
接收所述源端发送的每个独立子文件;
针对接收到的每个独立子文件,计算该独立子文件的实际校验值;如果该独立子文件的实际校验值与该独立子文件的初始校验值相同,则基于分配给该独立子文件的起始地址,保存该独立子文件。
在本申请的一种具体实施方式中,还包括:
如果该独立子文件的实际校验值与该独立子文件的初始校验值不同,则向所述源端返回针对该独立子文件传输失败的反馈信息,以使所述源端重新发送该独立子文件。
在本申请的一种具体实施方式中,所述传输请求中携带所述目标文件的大小信息,在所述接收源端发送的针对目标文件的传输请求之后、所述向所述源端返回接收确认信息之前,还包括:
根据所述目标文件的大小信息,确定自身的剩余存储空间是否足够存储所述目标文件;
如果是,则执行所述向所述源端返回接收确认信息的步骤。
一种文件传输装置,应用于目的端,所述装置包括:
传输请求接收模块,用于接收源端发送的针对目标文件的传输请求,所述目标文件由表头文件和多个独立子文件构成,所述表头文件中包含独立子文件的相关信息;
确认信息返回模块,用于向所述源端返回接收确认信息,以使所述源端发送所述表头文件;
表头文件接收模块,用于接收并保存所述表头文件;
起始地址分配模块,用于根据所述表头文件中包含的独立子文件的相关信息,为每个独立子文件分配在所述目的端中的起始地址;
子文件接收模块,用于基于分配给每个独立子文件的起始地址,接收并保存所述源端发送的每个独立子文件,接收到的独立子文件为所述源端调用多个线程并发传输的;
表头文件更新模块,用于更新所述表头文件中包含的独立子文件的相关信息。
一种文件传输设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述任一项所述文件传输方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述文件传输方法的步骤。
应用本申请实施例所提供的技术方案,目的端在接收到源端发送的针对目标文件的传输请求时,向源端返回接收确认信息,接收并保存源端发送的表头文件,为每个独立子文件分配在目的端中的起始地址,并基于分配的起始地址,接收并保存源端发送的每个独立子文件,更新表头文件中包含的独立子文件的相关信息为,完成目标文件的传输。在源端,目标文件按照表头文件和独立子文件进行模块化管理方式存储,便于管理,源端可调用多个线程并行传输多个独立子文件,而且,在某个独立子文件传输失败时,可以单独进行相应独立子文件的再传输,减少了传输时间,提高了文件传输效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中文件传输方法的一种实施流程图;
图2为本申请实施例中文件传输方法的另一种实施流程图;
图3为本申请实施例中一种文件传输装置的结构示意图;
图4为本申请实施例中一种文件传输设备的结构示意图。
具体实施方式
本申请的核心是提供一种文件传输方法,该方法可以应用于目的端,目的端可以是FTP服务器或者其他可存储文件的设备,待传输的目标文件存储于源端,源端将目标文件传输给目的端,由目的端保存。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参见图1所示,为本申请实施例所提供的一种文件传输方法的实施流程图,该方法可以包括以下步骤:
S110:接收源端发送的针对目标文件的传输请求。
目标文件由表头文件和多个独立子文件构成,表头文件中包含独立子文件的相关信息。
在本申请实施例中,对每个文件采用模块化管理方式。每个文件均由表头文件和多个独立子文件构成,表头文件中包含独立子文件的相关信息。在实际应用中,可以根据实际情况将一个文件分割为多个独立子文件,如按照数据类型进行分割,分别将文件中文字、图片、音频、视频类型的数据分割为独立子文件,或者按照数据体积进行分割,将500G的文件分割为两个250G的独立子文件。对于文件的分割是在存储时进行的,便于内部管理,从用户角度来看,仍为一个文件。
文件的模块化表现形式为:文件【表头文件独立子文件1独立子文件2独立子文件3独立子文件4……】。
其中,表头文件中可以包含独立子文件的数量、每个独立子文件在存储设备中的起始地址等。
在本申请实施例中,源端和目的端都具有文件存储功能。源端中可以存储包含目标文件在内的多个文件,对于目标文件的传输请求可以是在接收到用户的传输指令时,源端发起的,还可以是在达到设定时间间隔,如设定的数据转移时间间隔时,源端主动发起的。如前所描述的,目标文件由表头文件和多个独立子文件构成,表头文件中包含独立子文件的相关信息,如独立子文件的数量、每个独立子文件在源端的起始地址等。
目的端在接收到源端发送的针对目标文件的传输请求时,可以继续执行步骤S120的操作。
S120:向源端返回接收确认信息,以使源端发送表头文件。
目的端在接收到源端发送的针对目标文件的传输请求时,可以向源端返回接收确认信息,表明自身已经做好接收文件准备。这样源端可以开始执行文件传输任务,向目的端发送表头文件。
在本申请的一种具体实施方式中,传输请求中可以携带目标文件的大小信息,在步骤S110之后、S120之前,目的端可以先根据目标文件的大小信息,确定自身的剩余存储空间是否足够存储目标文件,如果是,则执行步骤S120向源端返回接收确认信息的操作。也就是所,目的端的剩余存储空间如果大于或等于目标文件的大小,则可以确认自身可以接收并存储目标文件,如果小于目标文件的大小,则表明没有足够的剩余存储空间存储目标文件,可以拒绝该传输请求,或者向源端返回空间不足的提示信息。
S130:接收并保存表头文件。
源端向目的端发送目标文件的表头文件后,目的端可以接收该表头文件,并在本地保存该表头文件。
S140:根据表头文件中包含的独立子文件的相关信息,为每个独立子文件分配在目的端中的起始地址。
在本申请实施例中,目的端接收并保存表头文件之后,即可获取到表头文件中的包含的独立子文件的相关信息。如独立子文件的数量、每个独立子文件在源端的起始地址、每个独立子文件的大小等。根据表头文件中包含的独立子文件的相关信息,可以为每个独立子文件分配在目的端中的起始地址。
在本申请的一种具体实施方式中,表头文件中还包含表头文件的初始校验值,在接收并保存表头文件之后、为每个独立子文件分配在目的端中的起始地址之前,可以先计算接收到的表头文件的实际校验值,如果表头文件的实际校验值与表头文件的初始校验值相同,则执行为每个独立子文件分配在目的端中的起始地址的步骤。
在本申请实施例中,校验值具体可以是MD5(Message-Digest Algorithm,消息摘要算法)值或者通过其他摘要算法计算得到的值。
文件在传输过程中,可能会因为网络原因或者其他原因,导致传输不完整。目的端在接收到表头文件之后,可以先计算接收到的表头文件的实际校验值,如果该实际校验值与表头文件中包含的初始校验值相同,则表明表头文件传输完整,可以继续执行为每个独立子文件分配起始地址的步骤,以接收源端发送的独立子文件。如果该实际校验值与表头文件中包含的初始校验值不同,则表明表头文件传输不完整,可以不再执行为每个独立子文件分配起始地址的步骤,向源端返回表头文件传输不完整的反馈信息,以便源端重新发送表头文件。
S150:基于分配给每个独立子文件的起始地址,接收并保存源端发送的每个独立子文件。
接收到的独立子文件为源端调用多个线程并发传输的。
源端发送表头文件之后,可以继续发送独立子文件,或者在接收到目的端的发送指令后,再继续发送独立子文件。目标文件由表头文件和多个独立子文件构成,源端在发送独立子文件时,可以调用多个线程并发传输,以减少传输时长,提高传输效率。
目的端为每个独立子文件分配在目的端中的起始地址之后,可以基于分配给每个独立子文件的起始地址,接收并保存源端发送的每个独立子文件,将每个独立子文件在相应的起始地址处保存。
在本申请的一种具体实施方式中,表头文件中包含的独立子文件的相关信息包括每个独立子文件的初始校验值,步骤S150可以包括以下步骤:
步骤一:接收源端发送的每个独立子文件;
步骤二:针对接收到的每个独立子文件,计算该独立子文件的实际校验值;如果该独立子文件的实际校验值与该独立子文件的初始校验值相同,则基于分配给该独立子文件的起始地址,保存该独立子文件。
为便于描述,将上述两个步骤结合起来进行说明。
在本申请实施例中,表头文件中包含的独立子文件的相关信息包括每个独立子文件的初始校验值。如,目标文件的一种模块化表现形式为:文件【表头文件/MD5独立子文件1/MD5独立子文件2/MD5独立子文件3/MD5……】。
目的端接收到表头文件后,即可获知每个独立子文件的初始校验值。
目的端接收源端发送的每个独立子文件。针对接收到的每个独立子文件,可以对该独立子文件进行完整性校验,即计算该独立子文件的实际校验值,如果该独立子文件的实际校验值与该独立子文件的初始校验值相同,则表明该独立子文件传输完整,可以基于分配给该独立子文件的起始地址,保存该独立子文件。如果该独立子文件的实际校验值与该独立子文件的初始校验值不同,则表明该独立子文件传输不完整,不能执行保存操作,可以向源端返回针对该独立子文件传输失败的反馈信息,以使源端重新发送给独立子文件。
在本申请实施例中,目的端对接收到的每个独立子文件均进行完整性校验,以保证接收并保存的每个独立子文件的完整性。当某个独立子文件传输失败时,可以仅再次进行该独立子文件的传输,对于其他已进行完整性传输的独立子文件,不受影响,相较于将目标文件作为一个整体文件进行传输,如果传输不完整,则需要重新进行整个文件的再次传输而言,可以节省传输时间,提高传输效率。
S160:更新表头文件中包含的独立子文件的相关信息。
目的端接收并保存源端发送的每个独立子文件之后,每个独立子文件具有各自在目的端的起始地址,与在源端的起始地址可能不同。可以更新表头文件中包含的独立子文件的相关信息。具体的,可以将各独立子文件在目的端中的起始地址回写到表头文件中,更新表头文件中包含的独立子文件在目的端中的起始地址。
在更新表头文件中包含的独立子文件的相关信息之后,还可以进一步更新表头文件中包含的表头文件的初始校验值。即根据更新后的表头文件中包含的独立子文件的相关信息,生成新的初始校验值,替换表头文件中之前包含的初始校验值。
源端将目标文件传输给目的端之后,目的端对于目标文件仍采用模块化管理方式,即目标文件仍由更新后的表头文件和多个独立子文件构成。方便对文件进行管理。
应用本申请实施例所提供的方法,目的端在接收到源端发送的针对目标文件的传输请求时,向源端返回接收确认信息,接收并保存源端发送的表头文件,为每个独立子文件分配在目的端中的起始地址,并基于分配的起始地址,接收并保存源端发送的每个独立子文件,更新表头文件中包含的独立子文件的相关信息为,完成目标文件的传输。在源端,目标文件按照表头文件和独立子文件进行模块化管理方式存储,便于管理,源端可调用多个线程并行传输多个独立子文件,而且,在某个独立子文件传输失败时,可以单独进行相应独立子文件的再传输,减少了传输时间,提高了文件传输效率。
为便于理解,下面以图2为例对本申请实施例进行进一步的说明。
如图2所示,目标文件由表头文件和多个子文件(子文件1、子文件2、子文件3、……子文件N)构成,在基于传输指令进行目标文件的传输时,可以先验证目的端,如FTP服务器的存储空间,确认剩余存储空间是否足够目标文件的存储,确认足够,可以复制并验证表头文件,分配子文件在目的端的起始地址,进行子文件的并发传输,传输至FTP存储空间并验证子文件MD5码,确认各子文件是否完整,如果确认完整,则将各子文件在目的端的起始地址回写到表头文件中,生成表头文件新的MD5码,至此,传输完毕。在目的端中,目标文件仍以模块化管理方式存储。
相应于上面的方法实施例,本申请实施例还提供了一种文件传输装置,应用于目的端,下文描述的一种文件传输装置与上文描述的一种文件传输方法可相互对应参照。
参见图3所示,该装置包括:
传输请求接收模块310,用于接收源端发送的针对目标文件的传输请求,目标文件由表头文件和多个独立子文件构成,表头文件中包含独立子文件的相关信息;
确认信息返回模块320,用于向源端返回接收确认信息,以使源端发送表头文件;
表头文件接收模块330,用于接收并保存表头文件;
起始地址分配模块340,用于根据表头文件中包含的独立子文件的相关信息,为每个独立子文件分配在目的端中的起始地址;
子文件接收模块350,用于基于分配给每个独立子文件的起始地址,接收并保存源端发送的每个独立子文件,接收到的独立子文件为源端调用多个线程并发传输的;
表头文件更新模块360,用于更新表头文件中包含的独立子文件的相关信息。
应用本申请实施例所提供的装置,目的端在接收到源端发送的针对目标文件的传输请求时,向源端返回接收确认信息,接收并保存源端发送的表头文件,为每个独立子文件分配在目的端中的起始地址,并基于分配的起始地址,接收并保存源端发送的每个独立子文件,更新表头文件中包含的独立子文件的相关信息为,完成目标文件的传输。在源端,目标文件按照表头文件和独立子文件进行模块化管理方式存储,便于管理,源端可调用多个线程并行传输多个独立子文件,而且,在某个独立子文件传输失败时,可以单独进行相应独立子文件的再传输,减少了传输时间,提高了文件传输效率。
在本申请的一种具体实施方式中,表头文件中还包含表头文件的初始校验值,还包括表头文件校验模块,用于:
在接收并保存表头文件之后、为每个独立子文件分配在目的端中的起始地址之前,计算接收到的表头文件的实际校验值;
如果表头文件的实际校验值与表头文件的初始校验值相同,则触发起始地址分配模块340执行为每个独立子文件分配在目的端中的起始地址的步骤。
在本申请的一种具体实施方式中,表头文件更新模块360,还用于:
在更新表头文件中包含的独立子文件的相关信息之后,更新表头文件中包含的表头文件的初始校验值。
在本申请的一种具体实施方式中,表头文件更新模块360,具体用于:
更新表头文件中包含的独立子文件在目的端中的起始地址。
在本申请的一种具体实施方式中,表头文件中包含的独立子文件的相关信息包括每个独立子文件的初始校验值,子文件接收模块350,具体用于:
接收源端发送的每个独立子文件;
针对接收到的每个独立子文件,计算该独立子文件的实际校验值;如果该独立子文件的实际校验值与该独立子文件的初始校验值相同,则基于分配给该独立子文件的起始地址,保存该独立子文件。
在本申请的一种具体实施方式中,子文件接收模块350,还用于:
如果该独立子文件的实际校验值与该独立子文件的初始校验值不同,则向源端返回针对该独立子文件传输失败的反馈信息,以使源端重新发送该独立子文件。
在本申请的一种具体实施方式中,传输请求中携带目标文件的大小信息,还包括空间确定模块,用于:
在接收源端发送的针对目标文件的传输请求之后、向源端返回接收确认信息之前,根据目标文件的大小信息,确定自身的剩余存储空间是否足够存储目标文件;
如果是,则触发确认信息返回模块320执行向源端返回接收确认信息的步骤。
相应于上面的方法实施例,本申请实施例还提供了一种文件传输设备,如图4所示,包括:
存储器410,用于存储计算机程序;
处理器420,用于执行计算机程序时实现上述文件传输方法的步骤。
相应于上面的方法实施例,本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述文件传输方法的步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

Claims (10)

1.一种文件传输方法,其特征在于,应用于目的端,所述方法包括:
接收源端发送的针对目标文件的传输请求,所述目标文件由表头文件和多个独立子文件构成,所述表头文件中包含独立子文件的相关信息;
向所述源端返回接收确认信息,以使所述源端发送所述表头文件;
接收并保存所述表头文件;
根据所述表头文件中包含的独立子文件的相关信息,为每个独立子文件分配在所述目的端中的起始地址;
基于分配给每个独立子文件的起始地址,接收并保存所述源端发送的每个独立子文件,接收到的独立子文件为所述源端调用多个线程并发传输的;
更新所述表头文件中包含的独立子文件的相关信息。
2.根据权利要求1所述的方法,其特征在于,所述表头文件中还包含所述表头文件的初始校验值,在所述接收并保存所述表头文件之后、所述为每个独立子文件分配在所述目的端中的起始地址之前,还包括:
计算接收到的所述表头文件的实际校验值;
如果所述表头文件的实际校验值与所述表头文件的初始校验值相同,则执行所述为每个独立子文件分配在所述目的端中的起始地址的步骤。
3.根据权利要求2所述的方法,其特征在于,在所述更新所述表头文件中包含的独立子文件的相关信息之后,还包括:
更新所述表头文件中包含的所述表头文件的初始校验值。
4.根据权利要求1所述的方法,其特征在于,所述更新所述表头文件中包含的独立子文件的相关信息,包括:
更新所述表头文件中包含的独立子文件在所述目的端中的起始地址。
5.根据权利要求1所述的方法,其特征在于,所述表头文件中包含的独立子文件的相关信息包括每个独立子文件的初始校验值,所述基于分配给每个独立子文件的起始地址,接收并保存所述源端发送的每个独立子文件,包括:
接收所述源端发送的每个独立子文件;
针对接收到的每个独立子文件,计算该独立子文件的实际校验值;如果该独立子文件的实际校验值与该独立子文件的初始校验值相同,则基于分配给该独立子文件的起始地址,保存该独立子文件。
6.根据权利要求5所述的方法,其特征在于,还包括:
如果该独立子文件的实际校验值与该独立子文件的初始校验值不同,则向所述源端返回针对该独立子文件传输失败的反馈信息,以使所述源端重新发送该独立子文件。
7.根据权利1至6之中任一项所述的方法,其特征在于,所述传输请求中携带所述目标文件的大小信息,在所述接收源端发送的针对目标文件的传输请求之后、所述向所述源端返回接收确认信息之前,还包括:
根据所述目标文件的大小信息,确定自身的剩余存储空间是否足够存储所述目标文件;
如果是,则执行所述向所述源端返回接收确认信息的步骤。
8.一种文件传输装置,其特征在于,应用于目的端,所述装置包括:
传输请求接收模块,用于接收源端发送的针对目标文件的传输请求,所述目标文件由表头文件和多个独立子文件构成,所述表头文件中包含独立子文件的相关信息;
确认信息返回模块,用于向所述源端返回接收确认信息,以使所述源端发送所述表头文件;
表头文件接收模块,用于接收并保存所述表头文件;
起始地址分配模块,用于根据所述表头文件中包含的独立子文件的相关信息,为每个独立子文件分配在所述目的端中的起始地址;
子文件接收模块,用于基于分配给每个独立子文件的起始地址,接收并保存所述源端发送的每个独立子文件,接收到的独立子文件为所述源端调用多个线程并发传输的;
表头文件更新模块,用于更新所述表头文件中包含的独立子文件的相关信息。
9.一种文件传输设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述文件传输方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述文件传输方法的步骤。
CN201910912885.5A 2019-09-25 2019-09-25 一种文件传输方法、装置、设备及存储介质 Active CN110474992B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910912885.5A CN110474992B (zh) 2019-09-25 2019-09-25 一种文件传输方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910912885.5A CN110474992B (zh) 2019-09-25 2019-09-25 一种文件传输方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN110474992A true CN110474992A (zh) 2019-11-19
CN110474992B CN110474992B (zh) 2022-07-22

Family

ID=68516801

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910912885.5A Active CN110474992B (zh) 2019-09-25 2019-09-25 一种文件传输方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN110474992B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1152352A2 (en) * 2000-04-27 2001-11-07 International Business Machines Corporation System and method for handling files in a distributed data storage environment
CN104519090A (zh) * 2013-09-27 2015-04-15 深圳市腾讯计算机系统有限公司 文件传输方法及装置
CN109063103A (zh) * 2018-07-27 2018-12-21 郑州云海信息技术有限公司 一种分布式非易失文件系统
CN110022295A (zh) * 2019-02-28 2019-07-16 视联动力信息技术股份有限公司 一种数据传输的方法和视联网系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1152352A2 (en) * 2000-04-27 2001-11-07 International Business Machines Corporation System and method for handling files in a distributed data storage environment
CN104519090A (zh) * 2013-09-27 2015-04-15 深圳市腾讯计算机系统有限公司 文件传输方法及装置
CN109063103A (zh) * 2018-07-27 2018-12-21 郑州云海信息技术有限公司 一种分布式非易失文件系统
CN110022295A (zh) * 2019-02-28 2019-07-16 视联动力信息技术股份有限公司 一种数据传输的方法和视联网系统

Also Published As

Publication number Publication date
CN110474992B (zh) 2022-07-22

Similar Documents

Publication Publication Date Title
CN108510389B (zh) 基于区块链的智能合约调用方法、设备及可读存储介质
CN109522330B (zh) 基于区块链的云平台数据处理方法、装置、设备及介质
CN108664660A (zh) 时序数据库的分布式实现方法、装置、设备及存储介质
US20130246554A1 (en) System and method for transmitting complex structures based on a shared memory queue
CN102984278B (zh) 实现浏览器数据同步的系统和方法
US9852220B1 (en) Distributed workflow management system
CN109088829A (zh) 一种数据调度方法、装置、存储介质及设备
CN103841170A (zh) 一种云存储方法和服务器
CN103765423A (zh) 收集与本地存储的数据文件相关联的事务数据
WO2020253634A1 (zh) 一种数据处理方法、系统及装置
CN106383665A (zh) 数据存储系统中的数据存储方法及协调存储节点
US10972410B2 (en) Managing context information between chatbot and user device
CN109783193A (zh) 一种可在多域云平台中复用的镜像文件管理方法
CN101207580A (zh) 即时通信平台和业务平台同步增删联系人的方法及系统
CN105162869B (zh) 一种用于数据备份管理的方法与设备
CN111143383B (zh) 一种数据更新方法、装置、电子设备及存储介质
CN110309215A (zh) 一种数据处理方法、系统及元数据更新方法、系统
CN110324407A (zh) 后台服务器的访问控制方法、装置及存储介质
CN110231956A (zh) 应用程序版本构建的方法、系统及装置
CN107577700B (zh) 数据库容灾的处理方法及装置
CN106888264B (zh) 一种数据交换方法和装置
CN108900627A (zh) 一种网络请求方法、终端装置及存储介质
CN105897754A (zh) 一种数据处理系统、数据拉取方法以及客户端
CN110457380A (zh) 一种数据存储系统
CN110413398A (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
GR01 Patent grant
GR01 Patent grant