CN107172112B - 一种计算机文件传输方法及装置 - Google Patents

一种计算机文件传输方法及装置 Download PDF

Info

Publication number
CN107172112B
CN107172112B CN201610128018.9A CN201610128018A CN107172112B CN 107172112 B CN107172112 B CN 107172112B CN 201610128018 A CN201610128018 A CN 201610128018A CN 107172112 B CN107172112 B CN 107172112B
Authority
CN
China
Prior art keywords
file
transmitted
receiving end
transmission
subunit
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.)
Active
Application number
CN201610128018.9A
Other languages
English (en)
Other versions
CN107172112A (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.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201610128018.9A priority Critical patent/CN107172112B/zh
Publication of CN107172112A publication Critical patent/CN107172112A/zh
Application granted granted Critical
Publication of CN107172112B publication Critical patent/CN107172112B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请公开了一种计算机文件传输方法,用以解决现有技术中的文件传输方式存在的处理资源浪费的问题。该方法包括:在发送端需要向接收端传输待传输文件前,判断所述待传输文件是否已被所述发送端执行过针对所述接收端的传输操作;如果是,则判断所述针对接收端的传输操作是否成功,若所述针对接收端的传输操作成功,则拒绝向所述接收端传输所述待传输文件,若所述针对接收端的传输操作失败,则根据与所述待传输文件对应的重新传输规则向所述接收端传输所述待传输文件;如果否,则向所述接收端传输所述待传输文件。本申请还公开了一种文件传输装置。

Description

一种计算机文件传输方法及装置
技术领域
本申请涉及计算机技术领域,尤其涉及一种计算机文件传输方法及装置。
背景技术
在互联网领域,数据传输是互联网中不同客户端之间数据交流的基础。一般地,客户端对于数据的传输是通过传输包含数据的文件来实现的。
现有技术中,在发送端发送文件前,发送端首先会校验接收端是否已经存储有与所述文件相同的文件,如果接收端已经存储有与所述文件相同的文件,则发送端不对所述文件进行传输;如果接收端不存在与所述文件相同的文件,则发送端对所述文件进行传输。但是,如果接收端正在接收与所述文件相同的文件,此时接收端并不存在与所述文件相同的文件,则发送端仍会对所述文件进行传输,这样便使得相同的文件进行了至少2次传输,导致处理资源的浪费。
发明内容
本申请实施例提供一种计算机文件传输方法,用以解决现有技术中的文件传输方式存在的处理资源浪费的问题。
本申请实施例还提供一种计算机文件传输装置,用以解决现有技术中的文件传输方式存在的处理资源浪费的问题。
本申请实施例采用下述技术方案:
一种计算机文件传输方法,包括:
在发送端需要向接收端传输待传输文件前,判断所述待传输文件是否已被所述发送端执行过针对所述接收端的传输操作;
如果是,则判断所述针对接收端的传输操作是否成功,若所述针对接收端的传输操作成功,则拒绝向所述接收端传输所述待传输文件,若所述针对接收端的传输操作失败,则根据与所述待传输文件对应的重新传输规则向所述接收端传输所述待传输文件;
如果否,则向所述接收端传输所述待传输文件。
一种计算机文件传输装置,包括:
第一执行判断单元,用于在发送端需要向接收端传输待传输文件前,判断所述待传输文件是否已被所述发送端执行过针对所述接收端的传输操作;
第一文件传输单元,包括第一判断子单元、第一拒绝子单元和第一传输子单元和第二传输子单元,其中:
所述第一判断子单元,用于如果所述待传输文件已被所述发送端执行过针对所述接收端的传输操作,则判断所述针对接收端的传输操作是否成功;
所述第一拒绝子单元,用于若所述针对接收端的传输操作成功,则拒绝向所述接收端传输所述待传输文件;
所述第一传输子单元,用于若所述针对接收端的传输操作失败,则根据与所述待传输文件对应的重新传输规则向所述接收端传输所述待传输文件;
所述第二传输子单元,用于如果所述待传输文件未被所述发送端执行过针对所述接收端的传输操作,则向所述接收端传输所述待传输文件。
一种计算机文件传输方法,包括:
创建用于监测文件传输状态的守护任务;
在发送端需要向接收端传输待传输文件时,启动所述守护任务;
在监测到所述待传输文件传输失败时,执行所述守护任务,所述守护任务用于根据与所述待传输文件对应的重新传输规则,对所述待传输文件执行重新传输操作。
一种计算机文件传输装置,包括:
守护任务创建单元,用于创建用于监测文件传输状态的守护任务;
守护任务启动单元,用于在发送端需要向接收端传输待传输文件时,启动所述守护任务;
守护任务执行单元,在监测到所述待传输文件传输失败时,执行所述守护任务,所述守护任务用于根据与所述待传输文件对应的重新传输规则,对所述待传输文件执行重新传输操作。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
相对于现有技术中通过判断接收端是否存在与待传输文件相同的文件,来确定是否执行对待传输文件的传输操作,本方案通过判断待传输文件是否已被执行过传输操作,来确定是否对待传输文件执行传输操作,避免了现有技术中发送端正在执行对待传输文件的传输操作但接收端未接收到待传输文件时,发送端会重新执行对待传输文件的传输操作导致的处理资源耗费较大的问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例1提供的一种计算机文件传输方法的实现流程示意图;
图2为本申请实施例1提供的一种计算机文件传输方法中各模块的关系示意图;
图3为本申请实施例2提供的一种计算机文件传输方法的一种实现流程示意图;
图4为本申请实施例3提供的一种计算机文件传输装置的具体结构示意图;
图5为本申请实施例4提供的一种计算机文件传输装置的具体结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
实施例1
为解决现有技术中的文件传输方式存在的处理资源浪费的问题,本申请实施例1提供一种计算机文件传输方法。该方法的执行主体可以是服务器,也可以是智能终端。所述执行主体并不构成对本申请的限定,为了便于描述,本申请实施例均以执行主体是服务器为例进行说明。
该方法的实现流程示意图如图1所示,包括下述步骤:
步骤11:在发送端需要向接收端传输待传输文件前,判断所述待传输文件是否已被所述发送端执行过针对所述接收端的传输操作;
本申请实施例中,所述发送端可以是服务器,也可以是智能终端,所述接收端可以是服务器,也可以是智能终端。所述智能终端比如可以是智能手机、平板电脑等任何可以执行文件传输操作的终端。
本申请实施例中,所述待传输文件可以是任何格式的文件,所述待传输文件的存储位置可以是所述发送端的存储介质中,本方法不对所述待传输文件的格式和存储位置做任何限定。所述待传输文件可以被所述发送端执行传输操作。
本申请实施例中,发送端可以接收文件传输请求,进而可以根据所述文件传输请求,执行文件传输操作。所述文件传输请求可以用于请求发送端对所述待传输文件执行文件传输操作,所述文件传输请求可以是由用户输入的文件传输指令提供的,也可以是预设的定时任务触发的。
本申请实施例中,所述文件传输请求可以包含待传输文件条件,以便发送端确定符合待传输文件条件的文件为待传输文件,进而对所述待传输文件执行所述传输操作。所述待传输文件条件可以是发送端用于确定所述待传输文件的条件,所述待传输文件条件比如可以是文件的存储位置信息、修改时间信息以及名称等用以确定待传输文件的条件中的至少一项。
本申请实施例中,所述文件传输请求中还可以包含与接收端相关的信息,以便发送端确定文件传输的接收端。
在确定所述待传输文件和所述接收端后,为了避免由于同一文件多次向同一接收端进行传输造成的处理资源的浪费。本申请实施例中,在发送端需要向接收端传输待传输文件前,可以判断所述待传输文件是否已被发送端执行过针对所述接收端的传输操作。所述被发送端执行过针对所述接收端的传输操作,指发送端已经向所述接收端执行过开始传输所述待传输文件的操作,至于所述待传输文件是否成功传输至接收端,在此不做限定。
本申请实施例中,所述同一文件指文件的内容、大小、修改时间等信息完全相同的文件。一般地,在实际应用中,可以利用文件的唯一标识对两个文件是否是同一文件进行判断,如果两个文件的唯一标识相同,则判定两个文件为同一文件,如果两个文件的唯一标识不同,则判定两个文件不是同一文件。
在实际应用中,所述唯一标识比如可以是文件的哈希值。所述文件的哈希值是指根据文件的内容通过逻辑运算得到的数值。所述逻辑运算比如可以是消息摘要算法第五版(Message Digest Algorithm MD5,MD5),则所述文件的哈希值为文件的MD5值。由于通过逻辑运算得到文件的哈希值已是比较成熟的相关技术,本说明书中对此不再进一步赘述。
在实际应用中,在判断所述待传输文件是否已被发送端执行过针对所述接收端的传输操作时,可以通过判断是否能够成功将待传输文件的唯一标识作为数据库表的主键的值写入预设的数据库中来判断。
所述数据库的主键为数据库表中的一个或多个字段,用于唯一标识数据库表中的某一条记录。数据库表的主键的值具有唯一性,当尝试向数据库表中写入新的记录时,数据库会自动检查新记录的主键的值,如果新纪录的主键的值与所述数据库表中其它记录的主键的值相同,则拒绝所述新纪录的写入请求。
本申请实施例中,可以通过将待传输文件的唯一标识作为数据库表的主键的值写入预设的数据库中,用于实现记录所述待传输文件已被执行过针对所述接收端的传输操作。由于数据库表的主键的值具有唯一性,所以在尝试将待传输文件的唯一标识作为数据库表的主键的值写入预设的数据库中时,如果写入成功,则可以判定所述待传输文件未被执行过针对所述接收端的传输操作,如果写入失败,则判定所述待传输文件已被执行过针对所述接收端的传输操作。
步骤12:如果所述待传输文件已被执行过针对所述接收端的传输操作,则判断所述针对接收端的传输操作是否成功,若所述针对接收端的传输操作成功,则拒绝向所述接收端传输所述待传输文件,若所述针对接收端的传输操作失败,则根据与所述待传输文件对应的重新传输规则向所述接收端传输所述待传输文件;
本申请实施例中,作为步骤12执行主体的服务器可以是发送端,也可以是发送端和接收端之外的第三方设备。
当所述步骤12的执行主体是第三方设备时,步骤12的具体实现方式,其实是服务器通知发送端拒绝向接收端传输所述待传输文件。
本申请实施例中,如果所述待传输文件已被所述发送端执行过针对所述接收端的传输操作,则所述待传输文件可能正在被所述发送端执行针对所述接收端的传输操作,但所述接收端尚未完整接收到所述待传输文件,那么可以拒绝向所述接收端传输所述待传输文件;所述待传输文件也可能是已经被所述发送端执行过针对所述接收端传输操作,但传输操作失败。
在实际应用中,可以通过接收文件传输模块对文件传输操作的执行结果的反馈,来判断所述针对接收端的传输操作是否成功;也可以通过注册守护任务来检测所述针对接收端的传输操作是否成功。其中,所述文件传输模块为对待传输文件执行文件传输操作的模块。
本申请实施例中,所述守护任务可以用于监测文件传输状态;在发送端需要向接收端传输待传输文件时,可以启动所述守护任务;在监测到所述待传输文件传输失败时,可以执行所述守护任务。所述守护任务用于根据与所述待传输文件对应的重新传输规则,对所述待传输文件执行重新传输操作。
本申请实施例中,如果所述待传输文件已经被所述发送端执行过针对所述接收端传输操作,但传输操作失败,那么可以根据与所述待传输文件对应的重新传输规则向所述接收端传输所述待传输文件。
本申请实施例中,所述重新传输规则为对待传输文件执行重新传输操作时所遵循的规则,所述重新传输规则中,比如可以包括对待传输文件执行重新传输操作的次数和每次执行重新传输操作的时刻。
由于不同待传输文件对重新传输规则的要求可能不同,则可以根据待传输文件对重新传输规则的要求,预先设置与所述待传输文件的重新传输规则要求对应的重新传输规则。,所述与所述待传输文件对应的重新传输规则包括:与所述待传输文件匹配的、预先设置的执行重新传输操作的次数和每次执行重新传输操作的时刻。比如可以根据待传输文件对时效性的要求,设置与所述待传输文件的时效性要求相匹配的执行重新传输操作的时刻。如果所述待传输文件传输失败,则可以根据与所述待传输文件匹配的、预先设置的执行重新传输操作的次数和时刻,对所述待传输文件执行重新传输操作。
本申请实施例中,在对待传输文件执行重新传输操作时,还可以根据上次传输操作失败的原因,对待传输文件进行重新传输操作,以便提高文件传输的成功率。
具体地,如果所述待传输文件传输失败,则获取待传输文件传输失败的原因,根据待传输文件传输失败的原因和与所述待传输文件对应的重新传输规则,确定与所述待传输文件失败的原因相对应的操作,在执行与所述待传输文件失败的原因相对应的操作后,对所述待传输文件执行重新传输操作。例如,当所述待传输文件传输失败的原因是网络连接断开时,则可以在执行网络连接操作后,再对所述待传输文件执行重新传输操作。
通过执行与所述待传输文件失败的原因相对应的操作,可以避免导致文件传输失败的原因仍然存在时,继续对所述待传输文件执行重新传输操作,导致的资源浪费问题,提高了文件传输的成功率。
需要说明的是,如果在根据待传输文件传输失败的原因和与所述待传输文件对应的重新传输规则,对所述待传输文件执行重新传输操作后,仍然无法成功传输待传输文件,则可以向用户发出文件传输失败的通知,并告知文件传输失败的原因。比如,可以将对待传输文件执行传输操作(包括重新传输操作)的整个过程中的所有操作以日志的形式进行记录,日志中可以记录对待传输文件执行传输操作的时刻、对待传输文件执行重新传输操作的时刻、待传输文件传输失败的原因,等等。
在实际应用中,在向所述接收端传输所述待传输文件后,可以通过创建守护任务,并在文件传输失败后执行所述守护任务,进而可以提高文件传输的成功率。所述守护任务用于在所述待传输文件传输失败后,根据与所述待传输文件对应的重新传输规则,对所述待传输文件执行重新传输操作,即可以针对不同时效要求的待传输文件,配置不同的重新传输规则。即如果所述待传输文件传输失败,则执行所述守护任务,如果所述待传输文件传输成功,则取消所述守护任务。
步骤13:如果所述待传输文件未被执行过针对所述接收端的传输操作,则向所述接收端传输所述待传输文件。
本申请实施例中,作为步骤13执行主体的服务器可以是发送端,也可以是发送端和接收端之外的第三方设备。
当所述步骤13的执行主体是第三方设备时,步骤13的具体实现方式,其实是服务器通知发送端拒绝向接收端传输所述待传输文件。
本申请实施例中,在向所述接收端传输所述待传输文件后,如果所述待传输文件传输失败,则可以根据与所述待传输文件对应的重新传输规则,对所述待传输文件执行重新传输操作。
在实际应用中,如果对文件进行一次重新传输后,所述待传输文件仍然无法传输成功,则可以继续对所述待传输文件执行重新传输操作,即可以对所述待传输文件执行多次重新传输操作。
本申请实施例提供的计算机文件传输方法,可以但不限于由服务器的下述模块执行:文件传输模块、业务补偿模块、调度模块。如图2所示。
其中,所述文件传输模块可以执行对待传输文件的文件传输操作,并可以将所述文件传输操作的结果告知业务补偿模块。
所述业务补偿模块指对文件传输模块的文件传输业务进行补偿操作的模块。所述补偿操作,即:在发送端需要向接收端传输待传输文件前,创建守护任务,检测文件传输状态;在监测到所述待传输文件传输失败时,执行所述守护任务,则执行所述守护任务,即根据调度模块提供的重新传输规则向文件传输模块发起执行重新传输操作的请求;如果文件传输成功,则通知调度模块取消所述守护任务。
所述调度模块用于调度所述业务补偿模块执行所述守护任务。调度模块可以获取业务补偿模块提供的重新传输规则,根据所述重新传输规则,调度业务补偿模块向文件传输模块发起执行重新传输操作的请求。
需要说明的是,本申请实施例中,所述文件传输模块、业务补偿模块和调度模块均可以是同一设备,也可以是不同设备。比如,所述文件传输模块和业务补偿模块可以为设备1,所述调度模块可以为设备2;又比如,所述文件传输模块可以为设备1,所述业务补偿模块和调度模块可以为设备2;等等。
需要说明的是,实施例1所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤11和步骤12的执行主体可以为设备1,步骤13的执行主体可以为设备2;又比如,步骤11的执行主体可以为设备1,步骤12和步骤13的执行主体可以为设备2;等等。
相对于现有技术中通过判断接收端是否存在与待传输文件相同的文件,来确定是否执行对待传输文件的传输操作,本申请实施例1提供的计算机文件传输方法,通过判断待传输文件是否已被执行过传输操作,来确定是否对待传输文件执行传输操作,避免了现有技术中发送端正在执行对待传输文件的传输操作但接收端未接收到待传输文件时,发送端会重新执行对待传输文件的传输操作导致的处理资源耗费较大的问题。
实施例2
本申请实施例2,主要介绍本申请实施例1提供的上述方法在实际中的一种应用方案。
实施例2提供的计算机文件传输方法如图3所示,包括下述步骤:
步骤201:发送端接收文件传输请求;
其中,所述文件传输请求中包含待传输文件的位置信息以及接收端信息。
步骤202:发送端计算所述待传输文件的MD5值;
步骤203:尝试将所述待传输文件的MD5值作为数据库表的主键值写入预设的数据库中,并判断是否能够写入成功;
若写入失败,则执行步骤204,若写入成功,则执行步骤205。
步骤204:如果写入失败,且写入失败的原因是预设数据库中已存在相同主键值,则判定所述待传输文件已被执行过针对所述接收端的传输操作,拒绝向所述接收端传输所述待传输文件;
步骤205:如果写入成功,则判定所述待传输文件未被执行过针对所述接收端的传输操作,向所述接收端传输所述待传输文件,进而执行步骤206;
步骤206:创建守护任务;并配置守护任务通知执行重新传输操作的次数和时刻;
步骤207:判断所述待传输文件是否传输成功;
步骤208:如果所述待传输文件传输成功,则取消所述守护任务;
步骤209:如果所述待传输文件传输失败,则执行所述守护任务,并根据所述守护任务执行重新传输操作;
步骤230:如果在执行所述守护任务后,所述重新传输操作仍失败,则发出文件传输失败的通知。
相对于现有技术中通过判断接收端是否存在与待传输文件相同的文件,来确定是否执行对待传输文件的传输操作,本申请实施例2提供的计算机文件传输方法,通过判断待传输文件是否已被执行过传输操作,来确定是否对待传输文件执行传输操作,避免了现有技术中发送端正在执行对待传输文件的传输操作但接收端未接收到待传输文件时,发送端会重新执行对待传输文件的传输操作导致的处理资源耗费较大的问题。
实施例3
为解决现有技术中的文件传输方式存在的处理资源浪费的问题,本申请实施例3提供一种计算机文件传输装置。该计算机文件传输装置的结构示意图如图4所示,主要包括下述功能单元:
第一执行判断单元31,用于在发送端需要向接收端传输待传输文件前,判断所述待传输文件是否已被所述发送端执行过针对所述接收端的传输操作;
第一文件传输单元32,包括第一判断子单元、第一拒绝子单元和第一传输子单元和第二传输子单元,其中:
所述第一判断子单元,用于如果所述待传输文件已被所述发送端执行过针对所述接收端的传输操作,则判断所述针对接收端的传输操作是否成功;
所述第一拒绝子单元,用于若所述针对接收端的传输操作成功,则拒绝向所述接收端传输所述待传输文件;
所述第一传输子单元,用于若所述针对接收端的传输操作失败,则根据与所述待传输文件对应的重新传输规则向所述接收端传输所述待传输文件;
所述第二传输子单元,用于如果所述待传输文件未被所述发送端执行过针对所述接收端的传输操作,则向所述接收端传输所述待传输文件。
在一种实施方式中,所述第一执行判断单元31,具体包括标识获取子单元、标识写入子单元、判断子单元,其中:
所述标识获取子单元,用于获取所述待传输文件的唯一标识;
所述标识写入子单元,用于尝试将所述唯一标识作为数据库表的主键值写入预设数据库中;
所述判断子单元,用于判断所述唯一标识是否成功写入所述预设数据库中,如果成功写入,则判定所述待传输文件未被执行过针对所述接收端的传输操作;如果写入失败,且写入失败的原因是预设数据库中已存在相同主键值,则判定所述待传输文件已被执行过针对所述接收端的传输操作。
重试单元33,用于在所述待传输文件未被所述发送端执行过针对所述接收端的传输操作,向所述接收端传输所述待传输文件后,如果所述待传输文件传输失败,则根据与所述待传输文件对应的重新传输规则,对所述待传输文件执行重新传输操作。
为了增加文件传输的成功率,在一种实施方式中,所述重试单元33,具体包括失败原因获取子单元和重新传输子单元,其中:
所述失败原因获取子单元,用于如果所述待传输文件传输失败,则获取待传输文件传输失败的原因;
所述重新传输子单元,用于根据待传输文件传输失败的原因和与所述待传输文件对应的重新传输规则,对所述待传输文件执行重新传输操作。
所述与所述待传输文件对应的重新传输规则包括:与所述待传输文件匹配的、预先设置的执行重新传输操作的次数和每次执行重新传输操作的时刻。
相对于现有技术中通过判断接收端是否存在与待传输文件相同的文件,来确定是否执行对待传输文件的传输操作,本申请实施例3提供的计算机文件传输装置,通过判断待传输文件是否已被执行过传输操作,来确定是否对待传输文件执行传输操作,避免了现有技术中发送端正在执行对待传输文件的传输操作但接收端未接收到待传输文件时,发送端会重新执行对待传输文件的传输操作导致的处理资源耗费较大的问题。
实施例4
为解决现有技术中的文件传输方式存在的处理资源浪费的问题,本申请实施例3提供一种计算机文件传输装置。该计算机文件传输装置的结构示意图如图4所示,主要包括下述功能单元:
守护任务创建单元41,用于创建用于监测文件传输状态的守护任务;
守护任务启动单元42,用于在发送端需要向接收端传输待传输文件时,启动所述守护任务;
守护任务执行单元43,在监测到所述待传输文件传输失败时,执行所述守护任务,所述守护任务用于根据与所述待传输文件对应的重新传输规则,对所述待传输文件执行重新传输操作。
第二执行判断单元44,用于在发送端需要向接收端传输待传输文件前,判断所述待传输文件是否已被所述发送端执行过针对所述接收端的传输操作;
第二文件传输单元45,包括第二判断子单元、第二拒绝子单元和第三传输子单元和第四传输子单元,其中:
所述第二判断子单元,用于如果所述待传输文件已被所述发送端执行过针对所述接收端的传输操作,则判断所述针对接收端的传输操作是否成功;
所述第二拒绝子单元,用于若所述针对接收端的传输操作成功,则拒绝向所述接收端传输所述待传输文件;
所述第三传输子单元,用于若所述针对接收端的传输操作失败,则向所述接收端传输所述待传输文件;
所述第四传输子单元,用于如果所述待传输文件未被所述发送端执行过针对所述接收端的传输操作,则向所述接收端传输所述待传输文件。
守护任务取消单元46,用于在监测到所述待传输文件传输成功时,则取消所述守护任务。
相对于现有技术中通过判断接收端是否存在与待传输文件相同的文件,来确定是否执行对待传输文件的传输操作,本申请实施例3提供的计算机文件传输装置,通过判断待传输文件是否已被执行过传输操作,来确定是否对待传输文件执行传输操作,避免了现有技术中发送端正在执行对待传输文件的传输操作但接收端未接收到待传输文件时,发送端会重新执行对待传输文件的传输操作导致的处理资源耗费较大的问题。通过创建守护任务,增加了文件传输操作的成功率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (16)

1.一种计算机文件传输方法,其特征在于,包括:
在发送端需要向接收端传输待传输文件前,判断所述待传输文件是否已被所述发送端执行过针对所述接收端的传输操作,所述待传输文件是否已被所述发送端执行过针对所述接收端的传输操作包括所述待传输文件是否正在被所述发送端执行针对所述接收端的传输操作,且所述接收端未完整接收到所述待传输文件;
如果是,则判断所述针对接收端的传输操作是否成功,若所述针对接收端的传输操作成功,则拒绝向所述接收端传输所述待传输文件,若所述针对接收端的传输操作失败,则根据与所述待传输文件对应的重新传输规则向所述接收端传输所述待传输文件;
如果否,则向所述接收端传输所述待传输文件。
2.如权利要求1所述方法,其特征在于,判断所述待传输文件是否已被所述发送端执行过针对所述接收端的传输操作,包括:
获取所述待传输文件的唯一标识;
尝试将所述唯一标识作为数据库表的主键值写入预设数据库中;
判断所述唯一标识是否成功写入所述预设数据库中,如果成功写入,则判定所述待传输文件未被执行过针对所述接收端的传输操作;如果写入失败,且写入失败的原因是预设数据库中已存在相同主键值,则判定所述待传输文件已被执行过针对所述接收端的传输操作。
3.如权利要求1所述方法,其特征在于,在所述待传输文件未被所述发送端执行过针对所述接收端的传输操作,向所述接收端传输所述待传输文件后,所述方法还包括:
如果所述待传输文件传输失败,则根据与所述待传输文件对应的重新传输规则,对所述待传输文件执行重新传输操作。
4.如权利要求3所述方法,其特征在于,所述如果所述待传输文件传输失败,则根据与所述待传输文件对应的重新传输规则,对所述待传输文件执行重新传输操作,包括:
如果所述待传输文件传输失败,则获取待传输文件传输失败的原因;
根据待传输文件传输失败的原因和与所述待传输文件对应的重新传输规则,对所述待传输文件执行重新传输操作。
5.如权利要求4所述方法,其特征在于,所述与所述待传输文件对应的重新传输规则包括:与所述待传输文件匹配的、预先设置的执行重新传输操作的次数和每次执行重新传输操作的时刻。
6.一种计算机文件传输方法,其特征在于,包括:
创建用于监测文件传输状态的守护任务;
在发送端需要向接收端传输待传输文件时,启动所述守护任务;
在监测到所述待传输文件传输失败时,执行所述守护任务,所述守护任务用于根据与所述待传输文件对应的重新传输规则,对所述待传输文件执行重新传输操作;
所述方法还包括:
在发送端需要向接收端传输待传输文件前,判断所述待传输文件是否已被所述发送端执行过针对所述接收端的传输操作,所述待传输文件是否已被所述发送端执行过针对所述接收端的传输操作包括所述待传输文件是否正在被所述发送端执行针对所述接收端的传输操作,且所述接收端未完整接收到所述待传输文件;若所述针对接收端的传输操作失败,则确定发送端需要向接收端传输待传输文件。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
如果是,则判断所述针对接收端的传输操作是否成功,若所述针对接收端的传输操作成功,则拒绝向所述接收端传输所述待传输文件,若所述针对接收端的传输操作失败,则向所述接收端传输所述待传输文件;
如果否,则向所述接收端传输所述待传输文件。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在监测到所述待传输文件传输成功时,则取消所述守护任务。
9.一种计算机文件传输装置,其特征在于,包括:
第一执行判断单元,用于在发送端需要向接收端传输待传输文件前,判断所述待传输文件是否已被所述发送端执行过针对所述接收端的传输操作,所述待传输文件是否已被所述发送端执行过针对所述接收端的传输操作包括所述待传输文件是否正在被所述发送端执行针对所述接收端的传输操作,且所述接收端未完整接收到所述待传输文件;
第一文件传输单元,包括第一判断子单元、第一拒绝子单元和第一传输子单元和第二传输子单元,其中:
所述第一判断子单元,用于如果所述待传输文件已被所述发送端执行过针对所述接收端的传输操作,则判断所述针对接收端的传输操作是否成功;
所述第一拒绝子单元,用于若所述针对接收端的传输操作成功,则拒绝向所述接收端传输所述待传输文件;
所述第一传输子单元,用于若所述针对接收端的传输操作失败,则根据与所述待传输文件对应的重新传输规则向所述接收端传输所述待传输文件;
所述第二传输子单元,用于如果所述待传输文件未被所述发送端执行过针对所述接收端的传输操作,则向所述接收端传输所述待传输文件。
10.如权利要求9所述装置,其特征在于,所述第一执行判断单元,具体包括标识获取子单元、标识写入子单元和判断子单元,其中:
所述标识获取子单元,用于获取所述待传输文件的唯一标识;
所述标识写入子单元,用于尝试将所述唯一标识作为数据库表的主键值写入预设数据库中;
所述判断子单元,用于判断所述唯一标识是否成功写入所述预设数据库中,如果成功写入,则判定所述待传输文件未被执行过针对所述接收端的传输操作;如果写入失败,且写入失败的原因是预设数据库中已存在相同主键值,则判定所述待传输文件已被执行过针对所述接收端的传输操作。
11.如权利要求10所述装置,其特征在于,所述装置还包括:
重试单元,用于在所述待传输文件未被所述发送端执行过针对所述接收端的传输操作,向所述接收端传输所述待传输文件后,如果所述待传输文件传输失败,则根据与所述待传输文件对应的重新传输规则,对所述待传输文件执行重新传输操作。
12.如权利要求11所述装置,其特征在于,所述重试单元,具体包括失败原因获取子单元和重新传输子单元,其中:
所述失败原因获取子单元,用于如果所述待传输文件传输失败,则获取待传输文件传输失败的原因;
所述重新传输子单元,用于根据待传输文件传输失败的原因和与所述待传输文件对应的重新传输规则,对所述待传输文件执行重新传输操作。
13.如权利要求12所述装置,其特征在于,所述与所述待传输文件对应的重新传输规则包括:与所述待传输文件匹配的、预先设置的执行重新传输操作的次数和每次执行重新传输操作的时刻。
14.一种计算机文件传输装置,其特征在于,包括:
守护任务创建单元,用于创建用于监测文件传输状态的守护任务;
守护任务启动单元,用于在发送端需要向接收端传输待传输文件时,启动所述守护任务;
守护任务执行单元,在监测到所述待传输文件传输失败时,执行所述守护任务,所述守护任务用于根据与所述待传输文件对应的重新传输规则,对所述待传输文件执行重新传输操作;
所述装置还包括:
第二执行判断单元,用于在发送端需要向接收端传输待传输文件前,判断所述待传输文件是否已被所述发送端执行过针对所述接收端的传输操作,所述待传输文件是否已被所述发送端执行过针对所述接收端的传输操作包括所述待传输文件是否正在被所述发送端执行针对所述接收端的传输操作,且所述接收端未完整接收到所述待传输文件;
所述装置还用于若所述针对接收端的传输操作失败,则确定发送端需要向接收端传输待传输文件。
15.如权利要求14所述装置,其特征在于,所述装置还包括:
第二文件传输单元,包括第二判断子单元、第二拒绝子单元和第三传输子单元和第四传输子单元,其中:
所述第二判断子单元,用于如果所述待传输文件已被所述发送端执行过针对所述接收端的传输操作,则判断所述针对接收端的传输操作是否成功;
所述第二拒绝子单元,用于若所述针对接收端的传输操作成功,则拒绝向所述接收端传输所述待传输文件;
所述第三传输子单元,用于若所述针对接收端的传输操作失败,则向所述接收端传输所述待传输文件;
所述第四传输子单元,用于如果所述待传输文件未被所述发送端执行过针对所述接收端的传输操作,则向所述接收端传输所述待传输文件。
16.如权利要求14所述装置,其特征在于,所述装置还包括:
守护任务取消单元,用于在监测到所述待传输文件传输成功时,则取消所述守护任务。
CN201610128018.9A 2016-03-07 2016-03-07 一种计算机文件传输方法及装置 Active CN107172112B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610128018.9A CN107172112B (zh) 2016-03-07 2016-03-07 一种计算机文件传输方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610128018.9A CN107172112B (zh) 2016-03-07 2016-03-07 一种计算机文件传输方法及装置

Publications (2)

Publication Number Publication Date
CN107172112A CN107172112A (zh) 2017-09-15
CN107172112B true CN107172112B (zh) 2020-10-02

Family

ID=59848448

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610128018.9A Active CN107172112B (zh) 2016-03-07 2016-03-07 一种计算机文件传输方法及装置

Country Status (1)

Country Link
CN (1) CN107172112B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109993889A (zh) * 2017-12-29 2019-07-09 山东新北洋信息技术股份有限公司 一种商品售卖方法及自动售货控制装置
CN111355752A (zh) * 2018-12-20 2020-06-30 阿里巴巴集团控股有限公司 基于网闸的文件传输方法、装置及设备
CN111835808B (zh) * 2019-08-01 2023-11-14 北京骑胜科技有限公司 数据存储方法及装置、数据读取方法及装置、存储介质
CN114722118A (zh) * 2022-03-28 2022-07-08 京东方科技集团股份有限公司 数据同步方法和系统、计算机可读存储介质

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1881863A (zh) * 2005-06-13 2006-12-20 中兴通讯股份有限公司 一种确定协商中的重传策略的设备和方法
CN101064665A (zh) * 2006-04-27 2007-10-31 上海无线通信研究中心 基于业务质量的harq方法
CN101064910A (zh) * 2006-04-24 2007-10-31 维豪信息技术有限公司 一种基于呼叫控制的端对端断点续传方法
CN101552669A (zh) * 2008-04-02 2009-10-07 林兆祥 数据传输的方法及系统
CN101719936A (zh) * 2009-12-09 2010-06-02 成都市华为赛门铁克科技有限公司 提供文件下载服务的方法、装置及缓存系统
CN102394925A (zh) * 2011-10-28 2012-03-28 广东电网公司电力科学研究院 远程监测诊断中心与地区调度中心的通讯方法及装置
CN102946596A (zh) * 2012-11-29 2013-02-27 广东全通教育股份有限公司 一种基于数字签名技术的短信防重发方法和系统
CN103024015A (zh) * 2012-12-05 2013-04-03 新华网股份有限公司 一种基于Flex的跨平台的浏览器端校验md5值上传文件的方法
CN103207878A (zh) * 2012-01-17 2013-07-17 阿里巴巴集团控股有限公司 发布信息的检查方法和装置
CN103546250A (zh) * 2013-09-18 2014-01-29 中标软件有限公司 一种用于车载终端的通信方法及系统
CN103559056A (zh) * 2013-11-05 2014-02-05 广东欧珀移动通信有限公司 文件下载方法和装置
CN103731186A (zh) * 2013-12-23 2014-04-16 上海斐讯数据通信技术有限公司 一种传输文件的方法及传输终端
CN103840962A (zh) * 2012-11-26 2014-06-04 深圳中兴力维技术有限公司 服务器告警输出方法及系统
CN103942125A (zh) * 2014-05-06 2014-07-23 南宁博大全讯科技有限公司 一种自动备份的方法与系统
CN103970852A (zh) * 2014-05-06 2014-08-06 浪潮电子信息产业股份有限公司 一种备份服务器的数据重删方法
CN104168093A (zh) * 2013-05-20 2014-11-26 腾讯科技(深圳)有限公司 一种文件传输方法及装置
CN105095462A (zh) * 2015-07-30 2015-11-25 北京京东尚科信息技术有限公司 处理网页重复请求的方法和系统

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1881863A (zh) * 2005-06-13 2006-12-20 中兴通讯股份有限公司 一种确定协商中的重传策略的设备和方法
CN101064910A (zh) * 2006-04-24 2007-10-31 维豪信息技术有限公司 一种基于呼叫控制的端对端断点续传方法
CN101064665A (zh) * 2006-04-27 2007-10-31 上海无线通信研究中心 基于业务质量的harq方法
CN101552669A (zh) * 2008-04-02 2009-10-07 林兆祥 数据传输的方法及系统
CN101719936A (zh) * 2009-12-09 2010-06-02 成都市华为赛门铁克科技有限公司 提供文件下载服务的方法、装置及缓存系统
CN102394925A (zh) * 2011-10-28 2012-03-28 广东电网公司电力科学研究院 远程监测诊断中心与地区调度中心的通讯方法及装置
CN103207878A (zh) * 2012-01-17 2013-07-17 阿里巴巴集团控股有限公司 发布信息的检查方法和装置
CN103840962A (zh) * 2012-11-26 2014-06-04 深圳中兴力维技术有限公司 服务器告警输出方法及系统
CN102946596A (zh) * 2012-11-29 2013-02-27 广东全通教育股份有限公司 一种基于数字签名技术的短信防重发方法和系统
CN103024015A (zh) * 2012-12-05 2013-04-03 新华网股份有限公司 一种基于Flex的跨平台的浏览器端校验md5值上传文件的方法
CN104168093A (zh) * 2013-05-20 2014-11-26 腾讯科技(深圳)有限公司 一种文件传输方法及装置
CN103546250A (zh) * 2013-09-18 2014-01-29 中标软件有限公司 一种用于车载终端的通信方法及系统
CN103559056A (zh) * 2013-11-05 2014-02-05 广东欧珀移动通信有限公司 文件下载方法和装置
CN103731186A (zh) * 2013-12-23 2014-04-16 上海斐讯数据通信技术有限公司 一种传输文件的方法及传输终端
CN103942125A (zh) * 2014-05-06 2014-07-23 南宁博大全讯科技有限公司 一种自动备份的方法与系统
CN103970852A (zh) * 2014-05-06 2014-08-06 浪潮电子信息产业股份有限公司 一种备份服务器的数据重删方法
CN105095462A (zh) * 2015-07-30 2015-11-25 北京京东尚科信息技术有限公司 处理网页重复请求的方法和系统

Also Published As

Publication number Publication date
CN107172112A (zh) 2017-09-15

Similar Documents

Publication Publication Date Title
CN107332876B (zh) 区块链状态的同步方法及装置
CN107087033B (zh) 消息推送方法、装置、存储介质及计算机设备
CN107172112B (zh) 一种计算机文件传输方法及装置
CN110995513B (zh) 物联网系统中的数据发送、接收方法、物联网设备及平台
CN107592351B (zh) 一种基于Redis的多用户发布订阅方法及系统
EP3297243A1 (en) Trusted login method and device
JP6686033B2 (ja) メッセージをプッシュするための方法および装置
WO2021139052A1 (zh) 文件传输的反馈方法、装置、设备和存储介质
CN108259618B (zh) 一种同步的数据交互处理方法及装置
CN111382985B (zh) 待办消息集成推送系统和工作方法
CN105825409B (zh) 一种电子发票消息推送系统及方法
CN112767152B (zh) 应用于联盟链的双园区灾备系统及方法
US20160308801A1 (en) Email service adapter
CN105373563B (zh) 数据库切换方法及装置
CN110650164A (zh) 文件的上传方法、装置、终端以及计算机存储介质
CN106557522B (zh) 一种用于提供定时功能的方法与设备
CN102902574B (zh) 一种多信息流节点的协同处理方法及装置
CN103501298B (zh) 一种不中断业务升级过程中保证链路不断流的方法和设备
CN110958287B (zh) 操作对象数据同步方法、装置及系统
US10674337B2 (en) Method and device for processing operation for device peripheral
CN114338584B (zh) 消息撤回方法和消息传输系统
EP3145120A1 (en) Data acquisition method, device and system
CN107800754B (zh) 数据传输任务处理、数据传输任务监控方法和装置
US20170169239A1 (en) Method for file synchronization, the receiver equipment and systems
CN106921619B (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
TR01 Transfer of patent right

Effective date of registration: 20200924

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman, British Islands

Patentee after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman, British Islands

Patentee before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20200924

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman, British Islands

Patentee after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: Alibaba Group Holding Ltd.

TR01 Transfer of patent right