CN116319826A - 一种文件同步方法、系统、电子设备及存储介质 - Google Patents
一种文件同步方法、系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116319826A CN116319826A CN202211731966.3A CN202211731966A CN116319826A CN 116319826 A CN116319826 A CN 116319826A CN 202211731966 A CN202211731966 A CN 202211731966A CN 116319826 A CN116319826 A CN 116319826A
- Authority
- CN
- China
- Prior art keywords
- file
- synchronized
- determining
- files
- change
- 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 50
- 230000001360 synchronised effect Effects 0.000 claims abstract description 256
- 230000008859 change Effects 0.000 claims abstract description 89
- 238000012545 processing Methods 0.000 claims abstract description 35
- 238000012544 monitoring process Methods 0.000 claims abstract description 27
- 238000012986 modification Methods 0.000 claims description 28
- 230000004048 modification Effects 0.000 claims description 28
- 238000012217 deletion Methods 0.000 claims description 15
- 230000037430 deletion Effects 0.000 claims description 15
- 238000004891 communication Methods 0.000 claims description 7
- 238000007792 addition Methods 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 abstract description 17
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 239000002699 waste material Substances 0.000 description 3
- 238000012512 characterization method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 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/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种文件同步方法、系统、电子设备及存储介质,涉及数据传输领域。文件同步方法包括:确定待同步文件,所述待同步文件为监控目录下发生变化的文件;基于所述待同步文件的变化属性确定所述待同步文件的文件状态,所述变化属性用于表征所述待同步文件的变化情况;在确定所述文件状态表征所述待同步文件处理完成时,将所述待同步文件与接收端进行同步。通过确定待同步文件的文件状态,将处理完成的待同步文件与接收端进行同步,从而减少对未完成处理的文件进行传输,提高文件传输的完整性与准确性。
Description
技术领域
本申请涉及数据传输领域,具体而言,涉及一种文件同步方法、系统、电子设备及存储介质。
背景技术
在进行数据摆渡时,通常需要将一个设备的数据传输至另一设备,从而实现两个设备之间的数据同步,例如,将个人电脑上指定位置新增、修改或删除的数据同步至服务器中,以使服务器对相应的数据进行调整。
在一些实时同步的场景中,需保证两设备之间数据同步的及时性,需及时将同步设备中变化的数据传输至被同步设备中,目前,通常会设置扫描周期,以一定的频率对同步设备中变化的数据进行扫描,在一次扫描周期结束后,同步设备会将扫描出变化的数据传输至被同步设备中进行同步。
然而,在一些大文件的传输场景中,由于文件过大或同步设备性能较差,在一次扫描周期内可能未完成对文件的拷贝,此时,同步设备会将已经扫描得到的变化数据进行传输,而由于大文件未拷贝完成,进行传输的大文件可能不完整,从而导致同步文件的可靠性和准确性受影响,同时,对不完整的文件进行传输,会导致设备的带宽浪费。
发明内容
有鉴于此,本申请提供一种文件同步方法、系统、电子设备及存储介质,以提高文件同步的准确性和完整性,减少对设备传输带宽的浪费。
第一方面,本申请实施例提供一种文件同步方法,包括:确定待同步文件,所述待同步文件为监控目录下发生变化的文件;基于所述待同步文件的变化属性确定所述待同步文件的文件状态,所述变化属性用于表征所述待同步文件的变化情况;在确定所述文件状态表征所述待同步文件处理完成时,将所述待同步文件与接收端进行同步。
本申请实施例中,先确定待同步文件并确定待同步文件的状态,在文件状态表征所述待同步文件处理完成时,再将该待同步文件与接收端同步,由此,可以减少将未完成处理的文件发送至接收端同步,提高文件传输的准确性与完整性。同时,减少对未完成处理的文件进行传输可以减少文件在完成处理后的重复传输,从而减少待同步文件重复传输对带宽的占用。
一实施例中,所述确定待同步文件,包括:基于预设周期对所述监控目录下的文件进行扫描;在确定相邻两个周期中所述监控目录下的文件发生变化时,将发生变化的文件确定为所述待同步文件。
本申请实施例中,通过预设周期对监控目录下的文件进行扫描,从而使得周期性确定待同步文件,提高与接收端文件同步的实时性。
一实施例中,所述变化属性包括变化类型,所述基于所述待同步文件的变化属性确定所述待同步文件的文件状态,包括:确定所述待同步文件的变化类型,所述变化类型包括新增、删除和修改;基于所述变化类型与文件状态的预设关系、所述待同步文件的变化类型,确定所述待同步文件的文件状态。
本申请实施例中,通过变化类型可以确定待同步文件的文件状态,从而可以简化确定文件状态的过程,提高确定文件状态的效率,进而提高文件同步的效率。
一实施例中,所述基于所述变化类型与文件状态的预设关系、所述待同步文件的变化类型,确定所述待同步文件的文件状态,包括:确定所述待同步文件的变化类型为删除时,确定所述待同步文件的文件状态为表征所述待同步文件处理完成的状态;对应地,所述将所述待同步文件与接收端进行同步,包括:将删除指令发送至所述接收端,所述删除指令用于指示所述接收端删除所述待同步文件。
本申请实施例中,对于删除类型的待同步文件,由于无需进行文件的处理与拷贝,因此,可以直接将待同步文件的文件状态确定为表征待同步文件处理完成的状态,并发送删除指令使接收端删除待同步文件,由此,可以简化文件状态的确认过程,提高文件同步的效率。
一实施例中,基于所述变化类型与文件状态的预设关系、所述待同步文件的变化类型,确定所述待同步文件的文件状态,包括:在确定所述待同步文件的变化类型为新增或修改时,确定所述待同步文件的数据量;在确定所述待同步文件的数据量小于预设数据阈值时,确定所述待同步文件的文件状态为表征所述待同步文件处理完成的状态。
本申请实施例中,预设数据阈值一定程度上可以表征设备的在预设周期内的可处理数据量,在确定所述待同步文件的变化类型为新增或修改时,可以通过确定待同步文件的数据量,并与预设数据阈值进行对比,若待同步文件的数据量小于预设数据阈值,则保证设备能够完成对待同步文件的处理。通过将待同步文件的数据量与预设数据阈值进行对比,可以较为快速地确定设备对待同步文件的处理情况,从而较为快速地确定待同步文件的文件状态,提高对待同步文件的同步效率。
一实施例中,所述变化属性包括时间变化属性,所述基于所述待同步文件的变化属性确定所述待同步文件的文件状态,包括:在确定所述待同步文件的数据量大于预设数据阈值时,获取所述待同步文件的所述时间变化属性,所述时间变化属性包括对所述待同步文件的发现时间和所述待同步文件的修改时间;将所述发现时间与所述修改时间之间的时间差与预设暂存时长进行对比;在确定所述时间差大于所述预设暂存时长时,确定所述待同步的文件状态为表征所述待同步文件处理完成的状态。
本申请实施例中,发现时间与修改时间之间的时间差可以表征待同步文件已经经历的处理时间,当时间差大于预设暂存时长时,则表征待同步文件已经经历一个较长时间的处理,因此,可以通过判断发现时间与所述修改时间之间的时间差是否大于预设暂存时长,确定待处理文件的文件状态。通过时间差与预设暂存时间的比较,可以使得待同步文件经历足够的时间进行处理,从而减少待同步文件未处理完成的情况,提高文件同步的准确性。
一实施例中,所述待同步文件为多个,所述将所述发现时间与所述修改时间之间的时间差与预设暂存时长进行对比之前,所述方法还包括:基于所述待同步文件所在设备的硬件配置,和/或,数据量大于预设数据阈值的待同步文件占所有所述待同步文件的比例,确定所述预设暂存时长。
本申请实施例中,通过基于待同步文件所在设备的硬件配置,和/或,数据量大于预设数据阈值的待同步文件占所有待同步文件的比例确定预设暂存时长,使得确定的预设暂存时长更符合各设备或各实际场景的需求,从而使得根据该预设暂存时长确定出的文件状态更准确,减少待同步文件未处理完成的情况发生,从而提高文件的完整性与准确性。
第二方面,本申请实施例提供了一种文件同步系统,包括:同步端,用于执行如第一方面任一项所述的文件同步方法;接收端,与所述同步端通信连接,所述接收端用于与所述同步端的待同步文件进行同步。
第三方面,本申请实施例提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行如第一方面所述的文件同步方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述可读存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如第一方面所述的文件同步方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请一实施例提供的一种文件同步系统的示意图;
图2为本申请一实施例提供的一种文件同步方法的流程图;
图3为本申请一实施例提供的一种文件同步装置的示意图;
图4为本申请一实施例提供的电子设备的结构示意图。
图标:同步端110;接收端120;文件同步装置200;扫描模块210;状态模块220;同步模块230;电子设备300;处理器310;存储器320。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在对本申请进行说明前,先对本申请所针对的场景进行说明。
在进行不同设备之间的文件同步时,例如,将设备A的文件与设备B的文件进行同步,通常会将设备A的文件拷贝至设备B,以使设备B具有与设备A相同的文件。在同步时,通常仅同步发生变化的文件,提高同步效率,例如,设备A的一个文件发生了修改,而其余文件未发生变化,则仅将该发生修改的文件同步至设备B。
目前,为提高设备之间文件同步的及时性,会设置扫描周期定期对文件进行扫描,例如,每间隔1秒对设备A的文件进行扫描,判断设备A是否存在有文件变化,若发生了变化,则会将变化的文件进行拷贝,然后发送至设备B。
然而,文件具有不同的大小,设备也具有不同的性能,不同设备对相同文件的拷贝效率和相同设备对不同文件的拷贝效率不同,例如,设备A对一个10M大小的文件和对一个1G大小的文件进行拷贝所花费的时间不同;以及对10M大小的拷贝速度,性能较优的设备相较于性能较差设备的拷贝速度更快。而扫描周期固定,一些较大的文件若发生变化,性能固定的设备则可能无法在扫描周期内完成拷贝,而当前扫描周期结束或下一扫描周期开始时,设备会将已经拷贝的内容先发送至其他设备,从而使得同步的文件不完整,未实现文件完整地同步,还对数据传输的带宽造成浪费。例如,设备A在1秒内完成500M大小的数据文件拷贝,而对于1G大小的文件无法完整地拷贝,扫描周期结束则会将500M大小的数据文件发送至设备B,此时,设备A发出的文件不完整,设备B无法准确地与设备A进行文件同步。
针对上述情况,本申请提供一种文件同步方法、系统、电子设备及存储介质,以在确定文件调整完成之后,再将完整的文件同步至其他设备。
请参阅图1,图1为本申请一实施例提供的文件同步系统的示意图。文件同步系统包括:同步端110和接收端120。
同步端110与接收端120分别为不同的电子设备,例如,同步端110与接收端120可以为电脑、手机、服务器等。其中,同步端110与接收端120的电子设备类型可以相同或不同。例如,同步端110可以为用户的个人电脑,接收端120可以为服务器或非同步端110的个人电脑等。
同步端110与接收端120通信连接,同步端110可以向接收端120传输文件或发送对文件的控制指令。在数据摆渡过程中,通常包括数据的发送方和接收方,在本申请中,同步端110可以为数据摆渡中的发送方,接收端120可以为数据摆渡的接收方。
同步端110内至少存在一个存储文件的存储区域,同步端110会对存储区域进行监测,在该存储区域内的文件发生变化时,会将发生变化的文件与接收端120进行同步。
例如,存储区域发生文件新增,同步端110会拷贝该新增的文件并发送至接收端120,接收端120接收新增的文件并存储至预设的位置。同步端110的存储区域存在文件删除时,同步端110会向接收端反馈文件删除的指令,接收端120在接收到指令后删除相应的文件。以及,当存储区域内的文件发生修改时,同步端110会拷贝修改后的文件并发送至接收端,接收端120可以使用修改后的文件对原存储的文件进行替换。
其中,同步端110用于执行本申请提供的文件同步方法,接下来,将对本申请提供的文件同步方法进行说明。
请参阅图2,图2为本申请实施例提供的文件同步方法的流程图,文件同步方法包括:
S110,确定待同步文件。
本实施例中,待同步文件为监控目录下发生变化的文件,监控目录为同步端中被监测存储区域的文件目录。发生变化是指某时刻相较于在先的时刻,监控目录下的文件是否发生如新增、删除、修改等变化。
文件的新增或删除可以通过监控目录中文件数量的变化确定。例如,监控目录原本存在10个文件,当数量变为9个时,文件数量减少,表明发生了文件删除,删除的文件为待同步文件;同理,当数量由10个变为11个时,文件数量增多,发生了文件新增,新增的文件为待同步文件。对于文件进行修改,则可以通过文件的不同属性进行确定。例如,通过文件的数据量大小进行确定,原本某文件大小为10KB,当文件大小变为非10KB的其他大小时,则表明文件发生了修改。
在一些实施例,还可以通过文件的修改时间确定文件是否发生变化,可以理解,在电子设备中,通常会记录文件的创建时间、修改时间等,此时,可以将同步端和接收端对相同文件的修改时间进行对比,判断修改时间是否相同从而判断文件是否发生变化。
一实施例中,确定待同步文件,包括:基于预设周期对监控目录下的文件进行扫描;在确定相邻两个周期中监控目录下的文件发生变化时,将发生变化的文件确定为待同步文件。
由于同步端的文件变化需及时与接收端进行同步,则可以预先设置一定的周期,定期对监控目录下的文件进行扫描,判断监控目录下的文件是否发生变化。示例性地,预设周期可以为1秒、2秒等,预设周期可以根据同步端的设备性能或对同步的实时性要求进行设置,上述仅为示例,不应成为对本申请的限制。扫描的内容可以为文件数量、不同文件各自的修改时间、数据量大小等信息。
通过对监控目录下的文件进行扫描,可以得到扫描结果,在本实施例中,可以通过将相邻两个周期的扫描结果进行对比,若在后周期的扫描结果相较于在先周期的扫描结果发生变化,则可以确定发生变化。然后,可以通过扫描结果的内容,确定变化的文件,即确定出待同步文件。在确定待同步文件的同时,还可以确定待同步文件的变化类型,变化类型可以为前述的新增、删除和修改。
在一些实施例中,监控目录下还包括记录文件信息表,记录文件信息表记录有监控目录下所有文件的变化情况,在进行扫描时,还可以对记录文件信息表进行扫描,确定所有文件的变化情况,从而确定待同步文件。
S120,基于待同步文件的变化属性确定待同步文件的文件状态。
待同步文件的变化属性可以为待同步文件的变化类型,文件数据量大小属性,以及时间变化属性等。变化类型可以为上述的新增、删除和减少,文件数据量变化大小可以为文件大小或文件相较于在先周期是否发生变化等。时间变化属性可以为创建时间、修改时间等时间信息。
文件状态可以为文件是否由同步端处理完成的状态。例如,同步端完成待同步文件的拷贝,则可以确定为同步端对该待同步文件处理完成,可以传输至接收端进行同步。
一实施例中,可以基于变化类型与文件状态的预设关系、待同步文件的变化类型,确定待同步文件的文件状态。
本实施例中,变化类型与文件状态的预设关系可以包括删除与文件状态的预设关系,和,新增或删除与文件状态的预设关系。
当确定待同步文件的变化类型为删除时,此时,同步端无需对文件进行拷贝,也无需传输任何文件至接收端,此时,可以直接确定同步端对该待同步文件处理完成。因此,可以直接通过判断变化类型是否为删除,从而确定待同步文件的文件状态。即确定待同步文件的变化类型为删除时,确定待同步文件的文件状态为表征待同步文件处理完成的状态。
当确定待同步文件的变化类型为新增或修改时,此时,同步端需将新增或修改的文件进行拷贝,而拷贝会根据同步端设备性能与文件大小,花费不同的时间,不同文件在预设周期下可能完成拷贝,也可能存在未完成拷贝的文件。因此,在本实施例中,在确定待同步文件的变化类型为新增或修改,无法直接得到待同步文件的文件状态,可以通过待同步文件的文件大小(即待同步文件的数据量)确定文件状态。
一实施例中,根据待同步文件的变化类型和数据量确定文件状态的过程包括:在确定待同步文件的变化类型为新增或修改时,确定待同步文件的数据量;在确定待同步文件的数据量小于预设数据阈值时,确定待同步文件的文件状态为表征待同步文件处理完成的状态。
不同的待同步文件可能具有不同的数据量,例如,部分文件可能数据量较小,同步端可能在短时间内处理完成,部分文件可能数据量较大,同步端需要耗费较多时间进行拷贝。
本实施例中,可以预先设置一个数据阈值,即预设数据阈值,用该预设数据阈值表征同步端在预设周期内能够处理数据量。然后,获取待同步文件的数据量,并将待同步文件的数据量与预设数据阈值进行对比,当待同步文件的数据量小于预设数据阈值时,则表征同步端能够对该待同步文件拷贝完成,则可以在预设周期完成扫描后,将该待同步文件发送至接收端。例如,一个1KB大小的文件,同步端能够在较短时间内完成拷贝,则该文件能够在预设周期内完成拷贝,并在文件完成拷贝后发送至接收端。因此,当待同步文件的数据量小于预设数据阈值时,确定该待同步文件的文件状态为表征待同步文件处理完成的状态。
其中,待同步文件的数据量可以通过在对监控目录下的文件进行扫描时得到。预设数据阈值可以根据同步端的设备性能合理设置,示例性地,同步端的设备处理性能较优,则可以将预设数据阈值设置为20MB、30MB等,同步端的设备处理性能较差,则可以将预设数据阈值设置为5MB、10MB等。上述仅为示例,不应成为对被本申请的限定。
当待同步文件的数据量大于预设数据阈值时,此时表征同步端无法在一个扫描周期内对待同步文件进行完整地拷贝,此时,可以在当前扫描周期内确定该待同步文件的文件状态为表征待同步文件未完成处理的状态。
一实施例中,在确定待同步文件的数据量大于预设数据阈值时,可以获取待同步文件的时间变化属性,时间变化属性包括对待同步文件的发现时间和所述待同步文件的修改时间;然后,将发现时间与修改时间之间的时间差与预设暂存时长进行对比;最后,在确定时间差大于预设暂存时长时,确定待同步的文件状态为待同步文件处理完成的状态。
本实施例中,时间变化属性可以包括对待同步文件的发现时间和所述待同步文件的修改时间。待同步文件的修改时间为同步端在文件修改后记录的时间,可以在待同步文件的属性中进行查看并获得。对待同步文件的发现时间指对监控目录进行扫描时,发现监控目录中发生变化的文件的时间。
可以理解,在待同步文件的数据量大于预设数据阈值时,此时,待同步文件无法在一个扫描周期内完成拷贝,可以等待待同步文件完成拷贝后再进行同步,在本实施例中,可以设置一个预设暂存时长,利用该预设暂存时长等待同步端完成对待同步文件的拷贝。
一实施例中,待同步文件为多个,预设暂存时长可以基于待同步文件所在设备的硬件配置,和/或,数据量大于预设数据阈值的待同步文件占所有待同步文件的比例确定。
本实施例中,同步端即为待同步文件所在设备,当同步端的设备性能较优时,同步端对待同步文件的拷贝效率较高,此时,可以设置较短的预设暂存时长。例如,设备1的性能优于设备2,当设备2的预设暂存时长设置为10秒时,设备1的预设暂存时长可以设置为8秒、5秒等。
本实施例中,监控目录下可能存在多个文件,同时,可能不同的文件都会发生变化,即任意文件都可能为待同步文件,而不同文件具有不同的大小。同步端的设备性能有限,当多个数据量大于预设数据阈值的文件需要进行拷贝时,不同文件之间拷贝会互相影响,因此,当数据量大于预设数据阈值的待同步文件占所有待同步文件的比例较大时,可以适当增加预设暂存时长,反之,比例较小时,可以适当减小预设暂存时长。
可以理解,预设预设暂存时长可以根据待同步文件所在设备的硬件配置,和数据量大于预设数据阈值的待同步文件占所有待同步文件的比例单独确定,也可以共同确定,上述仅为示例,不应成为对本申请的限定。
发现时间减去修改时间得到的时间差为待同步文件发生修改后经历的时间,即进行同步前拷贝的时间,当该时间差大于预设暂存时间时,表征待同步文件已经拷贝较长时间,则可以视为该待同步文件已经完成拷贝,因此,可以将该待同步文件的文件状态确定为表征该待同步文件处理完成的文件状态。
S130,在确定文件状态表征待同步文件处理完成时,将待同步文件与接收端进行同步。
对于变化类型为新增或修改的待同步文件,通过上述方式,可以确定待同步文件的文件状态,在确定文件状态表征待同步文件处理完成时,则表征待同步文件已经进行完整地拷贝,此时可以将待同步文件发送至接收端进行存储,从而实现同步端和接收端文件的同步。
对于变化类型为删除的待同步文件,在确定变化类型后,可以将删除指令发送至接收端,删除指令用于指示接收端删除待同步文件,从而实现同步端和接收端文件的同步。
本申请实施例中,先确定待同步文件并确定待同步文件的状态,在文件状态表征所述待同步文件处理完成时,再将该待同步文件与接收端同步,由此,可以减少将未完成处理的文件发送至接收端同步,提高文件传输的准确性与完整性。同时,减少对未完成处理的文件进行传输可以减少文件在完成处理后的重复传输,从而减少待同步文件重复传输对带宽的占用。
基于同一发明构思,本申请实施例还提供一种文件同步装置。请参阅图3,图3为本申请实施例提供的文件同步装置的示意图,文件同步装置200包括:扫描模块210,状态模块220和同步模块230。
扫描模块210,用于确定待同步文件,待同步文件为监控目录下发生变化的文件。
状态模块220,用于基于待同步文件的变化属性确定待同步文件的文件状态,变化属性用于表征待同步文件的变化情况。
同步模块230,用于在确定文件状态表征待同步文件处理完成时,将待同步文件与接收端进行同步。
扫描模块210,还用于基于预设周期对监控目录下的文件进行扫描;在确定相邻两个周期中监控目录下的文件发生变化时,将发生变化的文件确定为待同步文件。
状态模块220,还用于确定待同步文件的变化类型,变化类型包括新增、删除和修改;基于变化类型与文件状态的预设关系、待同步文件的变化类型,确定待同步文件的文件状态。
状态模块220还用于确定待同步文件的变化类型为删除时,确定待同步文件的文件状态为表征待同步文件处理完成的状态。同步模块230还用于将删除指令发送至接收端,删除指令用于指示接收端删除待同步文件。
状态模块220还用于在确定所述待同步文件的变化类型为新增或修改时,确定待同步文件的数据量;在确定待同步文件的数据量小于预设数据阈值时,确定待同步文件的文件状态为表征待同步文件处理完成的状态。
状态模块220还用于在确定待同步文件的数据量大于预设数据阈值时,获取待同步文件的时间变化属性,时间变化属性包括对待同步文件的发现时间和所述待同步文件的修改时间,将发现时间与修改时间之间的时间差与预设暂存时长进行对比,在确定时间差大于所述预设暂存时长时,确定待同步的文件状态为表征待同步文件处理完成的状态。
状态模块220,还用于基于待同步文件所在设备的硬件配置,和/或,数据量大于预设数据阈值的待同步文件占所有待同步文件的比例,确定预设暂存时长。
可以理解,文件同步装置与上述文件同步方法相对应,具体实现内容可以参考文件同步方法,在此不再赘述。上述文件同步装置和方法可以实现为一种计算机可读指令的形式,计算机可读指令可以在如图4所示的电子设备上运行。
请参照图4,本申请实施例还提供一种电子设备300,其可以作为前述的文件同步方法的执行主体,包括:处理器310和与处理器310通信连接的存储器320。
其中,存储器320存储有可被处理器310执行的指令,指令被处理器310执行,以使处理器310能够执行前述实施例中的文件同步方法。
处理器310和存储器320可以通过通信总线连接。或者通过一些通信模块连接,例如:无线通信模块、蓝牙通信模块、4G/5G通信模块等。
处理器310可以是一种集成电路芯片,具有信号处理能力。处理器310可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是数字信号处理器、专用集成电路、现成可编程门阵列或者其他可编程逻辑器件或者晶体管逻辑器件、分立硬件组件。其可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器320可以包括但不限于RAM(Random Access Memory,随机存取存储器),ROM(Read Only Memory,只读存储器),PROM(Programmable Read-Only Memory,可编程只读存储器),EPROM(Erasable Programmable Read-Only Memory,可擦除编程只读存储器),EEPROM(Electric Erasable Programmable Read-Only Memory,带电可擦除可编程只读存储器)等。
可以理解,电子设备300还可以包括更多自身所需的通用模块,在本申请实施例不作一一介绍。
基于同一发明构思,本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序在被运行时执行上述实施例中提供的方法。
该存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如软盘、硬盘、磁带)、光介质(例如DVD)、或者半导体介质(例如SSD(Solid State Disk,固态硬盘))等。
在本申请所提供的实施例中,应该理解到,所揭露的方法和装置,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的。在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM(Read-Only Memory,只读存储器)、RAM(RandomAccess Memory,随机存取存储器)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种文件同步方法,其特征在于,包括:
确定待同步文件,所述待同步文件为监控目录下发生变化的文件;
基于所述待同步文件的变化属性确定所述待同步文件的文件状态,所述变化属性用于表征所述待同步文件的变化情况;
在确定所述文件状态表征所述待同步文件处理完成时,将所述待同步文件与接收端进行同步。
2.根据权利要求1所述的方法,其特征在于,所述确定待同步文件,包括:
基于预设周期对所述监控目录下的文件进行扫描;
在确定相邻两个周期中所述监控目录下的文件发生变化时,将发生变化的文件确定为所述待同步文件。
3.根据权利要求2所述的方法,其特征在于,所述变化属性包括变化类型,所述基于所述待同步文件的变化属性确定所述待同步文件的文件状态,包括:
确定所述待同步文件的变化类型,所述变化类型包括新增、删除和修改;
基于所述变化类型与文件状态的预设关系、所述待同步文件的变化类型,确定所述待同步文件的文件状态。
4.根据权利要求3所述的方法,其特征在于,所述基于所述变化类型与文件状态的预设关系、所述待同步文件的变化类型,确定所述待同步文件的文件状态,包括:确定所述待同步文件的变化类型为删除时,确定所述待同步文件的文件状态为表征所述待同步文件处理完成的状态;
对应地,所述将所述待同步文件与接收端进行同步,包括:将删除指令发送至所述接收端,所述删除指令用于指示所述接收端删除所述待同步文件。
5.根据权利要求3所述的方法,其特征在于,基于所述变化类型与文件状态的预设关系、所述待同步文件的变化类型,确定所述待同步文件的文件状态,包括:在确定所述待同步文件的变化类型为新增或修改时,确定5所述待同步文件的数据量;
在确定所述待同步文件的数据量小于预设数据阈值时,确定所述待同步文件的文件状态为表征所述待同步文件处理完成的状态。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述变化属性包括时间变化属性,所述基于所述待同步文件的变化属性确定所述待同步0文件的文件状态,包括:
在确定所述待同步文件的数据量大于预设数据阈值时,获取所述待同步文件的所述时间变化属性,所述时间变化属性包括对所述待同步文件的发现时间和所述待同步文件的修改时间;
将所述发现时间与所述修改时间之间的时间差与预设暂存时长进行对5比;
在确定所述时间差大于所述预设暂存时长时,确定所述待同步的文件状态为表征所述待同步文件处理完成的状态。
7.根据权利要求6所述的方法,其特征在于,所述待同步文件为多个,
所述将所述发现时间与所述修改时间之间的时间差与预设暂存时长进行对0比之前,所述方法还包括:
基于所述待同步文件所在设备的硬件配置,和/或,数据量大于预设数据阈值的待同步文件占所有所述待同步文件的比例,确定所述预设暂存时长。
8.一种文件同步系统,其特征在于,包括:
5同步端,用于执行如权利要求1-7任一项所述的文件同步方法;
接收端,与所述同步端通信连接,所述接收端用于与所述同步端的待同步文件进行同步。
9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211731966.3A CN116319826A (zh) | 2022-12-30 | 2022-12-30 | 一种文件同步方法、系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211731966.3A CN116319826A (zh) | 2022-12-30 | 2022-12-30 | 一种文件同步方法、系统、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116319826A true CN116319826A (zh) | 2023-06-23 |
Family
ID=86784076
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211731966.3A Pending CN116319826A (zh) | 2022-12-30 | 2022-12-30 | 一种文件同步方法、系统、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116319826A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116527691A (zh) * | 2023-06-27 | 2023-08-01 | 天津中远海运散运数字科技有限公司 | 一种船岸数据的同步方法、装置、设备和介质 |
-
2022
- 2022-12-30 CN CN202211731966.3A patent/CN116319826A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116527691A (zh) * | 2023-06-27 | 2023-08-01 | 天津中远海运散运数字科技有限公司 | 一种船岸数据的同步方法、装置、设备和介质 |
CN116527691B (zh) * | 2023-06-27 | 2023-11-03 | 天津中远海运散运数字科技有限公司 | 一种船岸数据的同步方法、装置、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8706857B2 (en) | Information processing apparatus, information processing method, data management server and data synchronization system | |
EP3125501A1 (en) | File synchronization method, server, and terminal | |
CN110247985B (zh) | 一种资源下载方法、装置、电子设备及介质 | |
CN110830823B (zh) | 播放进度修正方法、装置、电子设备及可读存储介质 | |
CN116319826A (zh) | 一种文件同步方法、系统、电子设备及存储介质 | |
US20170126556A1 (en) | Information transmission method and apparatus, device and storage medium | |
CN116170870B (zh) | 网络注册方法、装置、存储介质及电子设备 | |
CN111291252B (zh) | 一种每秒查询率的调整方法、装置、电子设备及存储介质 | |
CN110888844A (zh) | 一种数据删除方法、系统、设备及计算机可读存储介质 | |
CN111708780B (zh) | 分布式表格系统与分片选主方法、装置、服务器及介质 | |
CN112449209B (zh) | 视频存储方法、装置、云服务器及计算机可读存储介质 | |
TWI795551B (zh) | 排他控制系統及排他控制方法 | |
CN109324760B (zh) | 一种磁盘数据上云方法、系统、设备及计算机存储介质 | |
CN113746932A (zh) | 网络请求合并方法、装置及电子装置、计算机程序产品 | |
US20160277628A1 (en) | Information processing apparatus, information processsing system, and non-transitory computer readable medium | |
WO2020049746A1 (ja) | データベース装置、プログラム、およびデータ処理方法 | |
CN111464395A (zh) | 一种创建区块链的方法、装置及可读存储介质 | |
CN106407320B (zh) | 文件处理方法、装置及系统 | |
CN111400327A (zh) | 一种数据同步方法、装置、电子设备及存储介质 | |
CN111181791A (zh) | 一种配额管理方法、装置、设备及存储介质 | |
CN115002135B (zh) | 多端协同方法、装置、系统及计算机可读存储介质 | |
WO2022042514A1 (zh) | 元数据同步的方法和装置 | |
CN111859068A (zh) | 报文跟踪方法、装置、服务器、存储介质 | |
CN112241395B (zh) | 应用程序文件的清理方法、装置、终端设备及存储介质 | |
CN115442226A (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 |