CN102638569B - 一种文件分发同步方法及系统 - Google Patents

一种文件分发同步方法及系统 Download PDF

Info

Publication number
CN102638569B
CN102638569B CN201210065256.1A CN201210065256A CN102638569B CN 102638569 B CN102638569 B CN 102638569B CN 201210065256 A CN201210065256 A CN 201210065256A CN 102638569 B CN102638569 B CN 102638569B
Authority
CN
China
Prior art keywords
server
synchronous
level
file
synchronization
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.)
Expired - Fee Related
Application number
CN201210065256.1A
Other languages
English (en)
Other versions
CN102638569A (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.)
Shenzhen Coship Electronics Co Ltd
Original Assignee
Shenzhen Coship Electronics 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 Shenzhen Coship Electronics Co Ltd filed Critical Shenzhen Coship Electronics Co Ltd
Priority to CN201210065256.1A priority Critical patent/CN102638569B/zh
Publication of CN102638569A publication Critical patent/CN102638569A/zh
Application granted granted Critical
Publication of CN102638569B publication Critical patent/CN102638569B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明提供了一种文件分发同步方法及系统,第一主服务器根据调用同步命令,获得服务器路由信息、文件同步信息及同步参数,确定需同步文件的来源路径及需同步的N级从服务器;第一主服务器生成同步矩阵模型,发送获取同步状态信息请求至第一级从服务器;第一主服务器根据同步状态信息,生成需同步文件并推送至第一级从服务器;第一主服务器根据同步完成响应,推送同步矩阵模型至第一级从服务器;第i级从服务器从同步矩阵模型中截取其为主服务器的同步子矩阵模型,并利用同步状态信息生成需同步文件;第i级从服务器推送需同步文件及同步矩阵模型至第i+1级从服务器。采用本发明的方法及系统,能够提高同步性能,降低同步失败率,缩短同步时间。

Description

一种文件分发同步方法及系统
技术领域
本发明涉及数据保护技术,特别涉及一种文件分发同步方法及系统。
背景技术
图1为现有的文件对等同步的系统的结构示意图。现结合图1,对现有的文件对等同步的系统进行说明,具体如下:
现有的文件对等同步的系统包括示为台式计算机的第一机器102和示为膝上型或其他移动计算机的第二机器114,连接第一机器102和第二机器114的连接118可为有线、无线、光学或其他信道。
第一机器102可产生并提供诸如图形用户界面、命令线接口、语音激活或其它接口的用户接口104来允许用户访问应用程序、文件、操作系统和其它资源。同步界面106可装设于第一机器102的操作系统中,同步界面106可向用户提供标识、激活和管理第一机器102与第二机器114间的同步时间的选择和选项。装设于第一机器102上的同步引擎108用于标识、存储和管理经同步文件集126,可与在第一机器102中维护的文件系统日志110通信以追踪并记录为经同步文件集126或其它中的同步或漫游所指定的文件、文件夹、目录、卷或其它内容或信息的状态。
当第一机器102与第二机器114之间经由USB或无线连接建立连接时,第一机器102中的同步引擎108对第二机器114进行认证以确保适当开始文件同步;当已认证连接被验证时,第一机器102中的同步引擎108可启动自动文件漫游、镜像或同步活动。例如,第一机器102中的同步引擎108可访问经同步文件集126或文件系统日志110,以确定第一机器102上的哪些文件、文件夹、目录、卷或其他内容需要转移到第二机器114上,以及类似地,位于第二机器114上的哪些文件、文件夹、目录、卷或其它内容需要转移到第一机器102上,以在第一机器102与第二机器114之间维护一致或相容的文件集或其他信息集。
现有的文件对等同步的系统中,当如第二机器114和第一机器102的需同步的机器数量较多时,如第二机器114的从服务器向如第一机器102的单一主服务器获取同步文件,作为主服务器的第一机器102的磁盘压力较大,同步性能较低,且在每次同步文件时都需要轮询文件系统中的所有文件,导致同步时间较长,同步失败率较高。
发明内容
有鉴于此,本发明的目的在于提供一种文件分发同步方法,该方法能够提高同步性能,降低同步失败率,缩短同步时间。
本发明的目的在于提供一种文件分发同步系统,该系统能够提高同步性能,降低同步失败率,缩短同步时间。
为达到上述目的,本发明的技术方案具体是这样实现的:
一种文件分发同步方法,该方法包括:
A、第一主服务器根据接收到的调用同步命令,获得服务器路由信息、文件同步信息及同步参数,确定需同步文件的来源路径及需同步的N级从服务器;
B、第一主服务器生成同步矩阵模型,并根据同步矩阵模型,发送获取同步状态信息请求至第一级从服务器;
C、第一主服务器根据来自第一级从服务器的同步状态信息,生成需同步文件,并推送至第一级从服务器;
D、第一主服务器根据来自第一级从服务器的同步完成响应,推送同步矩阵模型至第一级从服务器;
E、第i级从服务器从接收到的同步矩阵模型中截取其为主服务器的同步子矩阵模型,并利用来自与其连接的第i+1级从服务器的同步状态信息,生成需同步文件;
F、第i级从服务器推送需同步文件及同步矩阵模型至第i+1级从服务器;
所述N为大于1的自然数;所述i为大于或等于1且小于或等于N-1的自然数。
上述方法中,所述服务器路由信息至少包含N级从服务器的IP地址、第一主服务器的IP地址及用以表示服务器间通信成本的权重值;
所述文件同步信息至少包含来源路径、目标服务器的IP地址、目标路径及用以标识是否删除目标文件的标识信息;
所述同步参数至少包含矩阵数;所述矩阵数为一台服务器需要同时同步的服务器的数量。
较佳地,所述步骤F之后进一步包括:
G、第i级从服务器根据第i+1级从服务器完成同步的情况,发送同步矩阵模型执行响应至第一主服务器;
H、第一主服务器根据同步矩阵模型执行响应,重新生成同步矩阵模型,修改保存的服务器路由信息包含的权重值;
所述同步矩阵模型执行响应中至少包含已完成同步的从服务器的IP地址及同步完成情况;所述同步完成情况为同步成功信息或同步失败信息。
上述方法中,步骤A所述确定需同步文件的来源路径及需同步的N级从服务器包括:
A1、从调用同步命令中获取外部输入的磁盘路径;
A2、比较磁盘路径与文件同步信息包含的来源路径,在磁盘路径与来源路径相同、或磁盘路径比来源路径更具体时,将磁盘路径作为需同步文件的来源路径,在磁盘路径比来源路径更具体时,将来源路径作为需同步文件的来源路径,在磁盘路径与来源路径完全不相同时,结束文件同步;
A3、根据文件同步信息包含的目标路径及目标服务器的IP地址,确定需同步的N级从服务器。
上述方法中,所述生成同步矩阵模型包括:
B1、第一主服务器根据需同步的N级从服务器及服务器路由信息,获得需同步的N级从服务器间的连接关系;
B2、第一主服务器根据需同步的N级从服务器间的连接关系,生成树形数据结构,并将其作为同步矩阵模型;
所述树形数据结构包含一个父节点及多级子节点,一个父节点连接第一级子节点包含的多个子节点,每一级的每一个子节点连接至少一个下一级的子节点;所述父节点记载第一主服务器的IP地址及需同步文件的来源路径;所述子节点记载与其级数对应的从服务器的IP地址、目标文件路径及权重值。
上述方法中,所述生成需同步文件包括:
C1、根据同步状态信息确定目标路径下的目标文件信息;
C2、将目标文件信息与需同步文件的来源路径下的原文件信息进行比较,在目标文件信息与原文件信息不完全相同时,将原文件作为需同步文件,在目标文件信息与原文件信息完全相同时,不进行同步;
所述目标文件信息至少包含目标文件名称、目标文件时间及目标文件大小;所述原文件信息至少包含原文件名称、原文件时间及原文件大小。
上述方法中,步骤E所述从接收到的同步矩阵模型中截取其为主服务器的同步子矩阵模型包括:
E1、根据其IP地址,从接收到的同步矩阵模型中查找记载所述IP地址的子节点;
E2、从同步矩阵模型中选择以步骤E1所述的子节点作为父节点的树形数据结构作为同步子矩阵模型。
一种文件分发同步系统,该系统包含:第一主服务器及N级从服务器;
所述N级从服务器中的第一级从服务器连接第一主服务器,且第i级从服务器连接至少一个第i+1级从服务器;
所述第一主服务器根据接收到的调用同步命令,获得服务器路由信息、文件同步信息及同步参数,确定需同步文件的来源路径及需同步的N级从服务器,生成同步矩阵模型,并根据同步矩阵模型,从与其连接的第一级从服务器获取同步状态信息,生成需同步文件,推送需同步文件至第一级从服务器,且在第一级从服务器完成同步后,推送同步矩阵模型至第一级从服务器;
所述第i级从服务器从同步矩阵模型中截取以其为主服务器的同步子矩阵模型,根据同步子矩阵模型,从与其连接的第i+1级从服务器获取同步状态信息,生成需同步文件,推送需同步文件及同步矩阵模型至第i+1级从服务器;
所述N为大于1的自然数;所述i为大于或等于1且小于或等于N-1的自然数。
上述系统中,所述服务器路由信息至少包含N级从服务器的IP地址、第一主服务器的IP地址及用以表示服务器间通信成本的权重值;
所述文件同步信息至少包含来源路径、目标服务器的IP地址、目标路径及用以标识是否删除目标文件的标识信息;
所述同步参数至少包含矩阵数;所述矩阵数为一台服务器需要同时同步的服务器数量。
较佳地,所述第i级从服务器还根据第i+1级从服务器完成同步的情况,发送同步矩阵模型执行响应至第一主服务器;
所述第一主服务器还根据同步矩阵模型执行响应,重新生成同步矩阵模型,修改保存的服务器路由信息包含的权重值;
所述同步矩阵模型执行响应中至少包含已完成同步的从服务器的IP地址及同步完成情况;所述同步完成情况为同步成功信息或同步失败信息。
上述系统中,所述第一主服务器包含:
存储模块,用以保存服务器路由信息、文件同步信息、同步参数及同步矩阵模型;
第一同步控制模块,根据接收到的调用同步命令,从存储模块读取服务器路由信息、文件同步信息及同步参数,确定需同步文件的来源路径及需同步的N级从服务器,并发送至第一模型生成模块;根据从存储模块读取的同步矩阵模型,从与其连接的第一级从服务器获取同步状态信息,生成需同步文件,通过第一链接模块推送需同步文件及同步矩阵模型至第一级从服务器;
第一模型生成模块,根据需同步文件的来源路径及需同步的N级从服务器,生成同步矩阵模型,写入存储模块;
第一链接模块,与第一级从服务器建立连接。
上述系统中,所述第i级从服务器包含:
同步执行模块,根据通过第二链接模块接收到的需同步文件,完成文件的同步,并发送同步完成响应至第一主服务器,将通过第二链接模块接收到的同步矩阵模型发送给第二模型生成模块;
第二模型生成模块,根据第i级从服务器的IP地址,从同步矩阵模型中截取以第i级从服务器为主服务器的同步子矩阵模型,发送同步子矩阵模型至第二同步控制模块;
第二同步控制模块,根据同步子矩阵模型,从与其连接的第i+1级从服务器中获取同步状态信息,生成需同步文件,通过第二链接模块推送需同步文件及同步子矩阵模型至第i+1级从服务器;
第二链接模块,与第i-1级从服务器和第i+1级从服务器建立连接。
由上述的技术方案可见,本发明提供了一种文件分发同步方法及系统,第一主服务器根据接收到的调用同步命令,获得服务器路由信息、文件同步信息及同步参数,确定需同步文件的来源路径及需同步的N级从服务器;第一主服务器生成同步矩阵模型,并根据同步矩阵模型,发送获取同步状态信息请求至第一级从服务器;第一主服务器根据来自第一级从服务器的同步状态信息,生成需同步文件,并推送至第一级从服务器;第一主服务器根据来自第一级从服务器的同步完成响应,推送同步矩阵模型至第一级从服务器;第i级从服务器从接收到的同步矩阵模型中截取其为主服务器的同步子矩阵模型,并利用来自与其连接的第i+1级从服务器的同步状态信息,生成需同步文件;第i级从服务器推送需同步文件及同步矩阵模型至第i+1级从服务器。采用本发明的方法及系统,能够提高同步性能,降低同步失败率,缩短同步时间。
附图说明
图1为现有的文件对等同步的系统的结构示意图;
图2为本发明文件分发同步方法的流程图;
图3为本发明文件分发同步系统的结构示意图。
具体实施方式
为使本发明的目的、技术方案、及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
本发明提供了一种文件分发同步方法及系统,第一主服务器根据N级从服务器生成包含N级从服务器的IP地址的同步矩阵模型,并在成功向第一级从服务器主动推送需同步文件后,推送生成的同步矩阵模型至第一级从服务器,第一级从服务器从同步矩阵模型中截取以其IP地址作为父节点的同步子矩阵模型,并根据同步子矩阵模型,采用与第一主服务器相同的方法,完成与其连接的下一级从服务器的文件的同步,第i级从服务器按照第一级从服务器的方法,对第i+1级从服务器进行文件同步,依次类推,完成N级从服务器的文件同步。
图2为本发明文件分发同步方法的流程图。现结合图2,对本发明文件分发同步方法进行说明,具体如下:
步骤201:第一主服务器接收调用同步命令;
该步骤中的调用同步命令中可进一步携带有磁盘路径;其中,磁盘路径用以指示第一主服务器上进行同步的原文件的存储位置。
步骤202:第一主服务器确定需同步文件的来源路径及需同步的N级从服务器;
该步骤包括:
步骤2021,第一主服务器获得预先保存的服务器路由信息、文件同步信息及同步参数;
步骤2022,第一主服务器将磁盘路径与文件同步信息包含的来源路径进行比较,在磁盘路径与来源路径相同、或磁盘路径比来源路径更具体时,将磁盘路径作为需同步文件的来源路径,在磁盘路径比来源路径更具体时,将来源路径作为需同步文件的来源路径,在磁盘路径与来源路径完全不相同时,结束文件同步;
步骤2023,第一主服务器根据文件同步信息包含的目标路径及目标服务器的IP地址,确定需同步的N级从服务器。
其中,服务器路由信息至少包含N级从服务器的IP地址、第一主服务器的IP地址及用以表示服务器间通信成本的权重值;文件同步信息至少包含来源路径、目标服务器的IP地址、目标路径及用以标识是否删除目标文件的标识信息;同步参数至少包含矩阵数;矩阵数为一台服务器需要同时同步的服务器的数量;来源路径为第一主服务器上需要同步的文件磁盘路径;目标路径为文件需要同步到从服务器上的磁盘路径;N为大于1的整数。
在所述步骤2022中,磁盘路径比来源路径更具体,指代磁盘路径所指示的存储位置上的文件是来源路径所指示的存储位置上的文件夹下的文件或文件夹下的子文件夹中的文件,比如:来源路径所指示的是磁盘C下的文件夹A,磁盘路径所指示的是磁盘C下的文件夹A下的文件B,此时,磁盘路径比来源路径更具体,若磁盘路径所指示的是磁盘C,则来源路径比磁盘路径更具体。
步骤203:第一主服务器生成同步矩阵模型;
该步骤包括:
步骤2031:第一主服务器根据需同步的N级从服务器及服务器路由信息,获得需同步的N级从服务器间的连接关系;
步骤2032:第一主服务器根据需同步的N级从服务器间的连接关系,生成树形数据结构,并将其作为同步矩阵模型。
步骤2032中的树形数据结构包含一个父节点及多级子节点,一个父节点连接第一级子节点包含的多个子节点,每一级的每一个子节点连接至少一个下一级的子节点。其中,父节点记载第一主服务器的IP地址及需同步文件的来源路径;子节点记载与其级数对应的从服务器的IP地址、目标文件路径及权重值。比如,同步参数中的矩阵数为2,则父节点连接的第一级子节点包含2个子结点,第一级子节点中的每一个子节点连接第二级子节点,且其连接的第二级子节点包含4个子节点,每两个子节点连接同一个第一级子节点,以此类推、
步骤204:第一主服务器发送获取同步文件信息请求至第一级从服务器;
该步骤中的获取同步文件信息请求至少携带有目标服务器的IP地址及目标路径,以便第一级从服务器确定是否为其自身。
步骤205:第一级从服务器发送获取同步文件信息响应至第一主服务器;
该步骤中,第一级从服务器根据目标服务器的IP地址确定为其自身,根据目标路径确定其指示的文件是否已被同步,并将已同步或未同步作为同步结果,携带在获取同步文件信息响应中,发送给第一主服务器。
获取同步文件信息响应中还携带有目标路径下的目标文件信息;目标文件信息至少包含目标文件名称、目标文件时间及目标文件大小;目标文件时间可为目标文件的创建时间或最近一次的修改时间。
步骤206:第一主服务器生成需同步文件;
该步骤包括:
步骤2061,第一主服务器根据同步状态信息,确定目标路径下的目标文件信息;
步骤2062,第一主服务器将目标文件信息与需同步文件的来源路径下的原文件信息进行比较,在目标文件信息与原文件信息不完全相同时,将原文件作为需同步文件,在目标文件信息与原文件信息完全相同时,不进行同步。
在步骤2062中,原文件信息至少包含原文件名称、原文件时间及原文件大小;原文件时间为原文件的创建时间或最近一次修改时间。
在步骤2062中,比较目标文件信息和原文件信息,可对目标文件信息包含的内容及原文件信息包含的内容进行编码,在进行比较时,比较各编码相加的和是否完全相同,如果是,则证明目标文件信息和原文件信息完全相同,不需要同步,否则,证明目标文件信息和原文件信息不完全相同,需要同步。
在步骤2062中,目标文件信息与原文件信息不完全相同指代目标文件名称、目标文件时间及目标文件大小中至少有一种信息与原文件的相应内容不同;
步骤207:第一主服务器推送需同步文件至第一级从服务器;
该步骤中的推送为第一主服务器主动向第一级从服务器输出需同步文件;需同步文件为需同步文件的来源路径下的原文件。
步骤208:第一级从服务器发送同步完成响应至第一主服务器;
该步骤中,第一级从服务器根据第一主服务器推送的需同步文件,对目标路径下的目标文件进行同步,且在成功完成文件同步后,发送同步完成响应至第一主服务器。
步骤209:第一主服务器推送同步矩阵模型至第一级从服务器;
该步骤中的推送为第一主服务器主动输出同步矩阵模型至第一级从服务。
步骤210:第一级从服务器生成同步子矩阵模型;
该步骤中的第一级从服务器也可为第i级从服务器;i为大于或等于1且小于或等于N-1的整数。
该步骤包括:
步骤2101,第一级从服务器根据其IP地址,从第一主服务器推送的同步矩阵模型中查找记载该IP地址的子节点;
步骤2102,第一级从服务器从同步矩阵模型中选择以步骤2101的子节点作为父节点的树形数据结构作为同步子矩阵模型。
从步骤210开始,第一级从服务器按照同步子矩阵模型,将其自身作为主服务器,对与其连接的下一级从服务器上的文件进行同步。
步骤211:第一级从服务器发送获取同步文件信息请求至第i+1级从服务器;
该步骤的第一级从服务器也可为第i级从服务器。
该步骤可采用与步骤204相同的方法,在此不再赘述。
步骤212:第i+1级从服务器发送获取同步文件信息响应至第一级从服务器;
该步骤的第一级从服务器也可为第i级从服务器。
该步骤可采用与步骤205相同的方法,在此不再赘述。
步骤213:第一级从服务器生成需同步文件;
该步骤的第一级从服务器也可为第i级从服务器。
该步骤中的第一级从服务器生成需同步文件的方法与步骤206中第一主服务器生成需同步文件的方法相同,指示需同步文件的来源路径位于第一级从服务器上,而不再是第一主服务器上。
步骤214:第一级从服务器推送需同步文件至第i+1级从服务器;
该步骤的第一级从服务器也可为第i级从服务器。
该步骤与步骤207的方法相同,只是推送的主体为第一级从服务器,不再是第一主服务器,在此不再赘述。
步骤215:第i+1级从服务器发送同步完成响应至第一级从服务器;
该步骤的第i+1级从服务器也可发送同步完成响应至第i级从服务器。
该步骤与步骤208的方法相同,只是执行的主体为第i+1级从服务器,在此不再赘述。
步骤216:第一级从服务器发送同步矩阵模型执行响应至第一主服务器;
该步骤中,第一级从服务器根据其下一级从服务器反馈的同步矩阵模型执行响应,将与其连接的下一级从服务器的同步完成情况,携带在同步矩阵模型执行响应中,发送至第一主服务器中。
其中,同步矩阵模型执行响应中至少包含已完成同步的从服务器的IP地址及同步完成情况;同步完成情况为同步成功信息或同步失败信息。
步骤217:第一主服务器重新生成同步矩阵模型。
该步骤包括:
步骤2171,第一主服务器根据同步完成情况,增加与同步失败信息对应的目标服务器的通信链路的权重值;
步骤2172,第一主服务器将与同步成功信息对应的子节点从同步矩阵模型中删除,重新生成同步矩阵模型。
步骤2172中的与同步成功信息对应的子节点为记录有与同步成功信息对应的目标服务器的IP地址的子节点。
第i+1级从服务器控制第i+2级从服务器的文件分发同步的方法与步骤210至步骤215的第i级从服务器控制第i+1级从服务器的文件分发同步的方法相同,在此不再赘述。
图3为本发明文件分发同步系统的结构示意图。现结合图3,对本发明文件分发同步系统进行说明,具体如下:
本发明的文件分发同步系统包含:第一主服务器30及N级从服务器。其中,N级从服务器中的第一级从服务器31连接第一主服务器30,且第i级从服务器连接至少一个第i+1级从服务器32。
第一主服务器30根据接收到的调用同步命令,获得服务器路由信息、文件同步信息及同步参数,确定需同步文件的来源路径及需同步的N级从服务器,生成同步矩阵模型,并根据同步矩阵模型,从与其连接的第一级从服务器31获取同步状态信息,生成需同步文件,推送需同步文件至第一级从服务器31,且在第一级从服务器31完成同步后,推送同步矩阵模型至第一级从服务器31。
第i级从服务器从同步矩阵模型中截取以其为主服务器的同步子矩阵模型,根据同步子矩阵模型,从与其连接的第i+1级从服务器32获取同步状态信息,生成需同步文件,推送需同步文件及同步矩阵模型至第i+1级从服务器32。
其中,N为大于1的自然数;i为大于或等于1且小于或等于N-1的自然数;服务器路由信息至少包含N级从服务器的IP地址、第一主服务器的IP地址及用以表示服务器间通信成本的权重值;文件同步信息至少包含来源路径、目标服务器的IP地址、目标路径及用以标识是否删除目标文件的标识信息;同步参数至少包含矩阵数;矩阵数为一台服务器需要同时同步的服务器数量。
优选地,第一主服务器30还将接收到的服务器路由信息、文件同步信息及同步参数进行保存。
优选地,第i级从服务器还根据第i+1级从服务器32完成同步的情况,发送同步矩阵模型执行响应至第一主服务器30;第一主服务器30还根据同步矩阵模型执行响应,重新生成同步矩阵模型,修改保存的服务器路由信息包含的权重值。
其中,同步矩阵模型执行响应中至少包含已完成同步的从服务器的IP地址及同步完成情况;同步完成情况为同步成功信息或同步失败信息。
其中,第一主服务器30包含:存储模块301、第一同步控制模块302、第一模型生成模块303和第一链接模块304。
存储模块301用以保存服务器路由信息、文件同步信息、同步参数及同步矩阵模型。
第一同步控制模块302根据接收到的调用同步命令,从存储模块301读取服务器路由信息、文件同步信息及同步参数,确定需同步文件的来源路径及需同步的N级从服务器,并发送至第一模型生成模块303;根据从存储模块301读取的同步矩阵模型,从与其连接的第一级从服务器31获取同步状态信息,生成需同步文件,通过第一链接模块304推送需同步文件及同步矩阵模型至第一级从服务器31。
第一模型生成模块303根据需同步文件的来源路径及需同步的N级从服务器,生成同步矩阵模型,写入存储模块301。
第一链接模块304与第一级从服务器31建立连接。
其中,第i级从服务器包含:同步执行模块311、第二模型生成模块312、第二同步控制模块313及第二链接模块314。
同步执行模块311根据通过第二链接模块314接收到的需同步文件,完成文件的同步,并通过第二连接模块314发送同步完成响应至第一主服务器30,将通过第二链接模块314接收到的同步矩阵模型发送给第二模型生成模块312。
第二模型生成模块312根据第i级从服务器的IP地址,从同步矩阵模型中截取以第i级从服务器为主服务器的同步子矩阵模型,发送同步子矩阵模型至第二同步控制模块313。
第二同步控制模块313根据同步子矩阵模型,从与其连接的第i+1级从服务器32中获取同步状态信息,生成需同步文件,通过第二链接模块314推送需同步文件及同步子矩阵模型至第i+1级从服务器32。
第二链接模块314与第i-1级从服务器和第i+1级从服务器32建立连接。
本发明的上述较佳实施例中,文件分发同步不再由主服务器一个机器进行控制和执行,而是由第一主服务器和N级从服务器都可作为控制和执行文件分发同步的主服务器,N级从服务器为第一主服务器分担了部分文件分发同步任务,降低了第一主服务器的磁盘压力,提高了同步性能;另外,本发明在进行文件分发同步时,不再轮询文件系统中的所有文件,根据来源路径和目标路径确定需要同步文件,缩短了同步时间,提高了同步成功率。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (12)

1.一种文件分发同步方法,其特征在于,该方法包括:
A、第一主服务器根据接收到的调用同步命令,获得服务器路由信息、文件同步信息及同步参数,确定需同步文件的来源路径及需同步的N级从服务器;
B、第一主服务器生成同步矩阵模型,并根据同步矩阵模型,发送获取同步状态信息请求至第一级从服务器;
C、第一主服务器根据来自第一级从服务器的同步状态信息,生成需同步文件,并推送至第一级从服务器;
D、第一主服务器根据来自第一级从服务器的同步完成响应,推送同步矩阵模型至第一级从服务器;
E、第i级从服务器从接收到的同步矩阵模型中截取其为主服务器的同步子矩阵模型,并利用来自与其连接的第i+1级从服务器的同步状态信息,生成需同步文件;
F、第i级从服务器推送需同步文件及同步子矩阵模型至第i+1级从服务器;
所述N为大于1的自然数;所述i为大于或等于1且小于或等于N-1的自然数。
2.根据权利要求1所述的方法,其特征在于,所述服务器路由信息至少包含N级从服务器的IP地址、第一主服务器的IP地址及用以表示服务器间通信成本的权重值;
所述文件同步信息至少包含来源路径、目标服务器的IP地址、目标路径及用以标识是否删除目标文件的标识信息;
所述同步参数至少包含矩阵数;所述矩阵数为一台服务器需要同时同步的服务器的数量。
3.根据权利要求2所述的方法,其特征在于,所述步骤F之后进一步包括:
G、第i级从服务器根据第i+1级从服务器完成同步的情况,发送同步矩阵模型执行响应至第一主服务器;
H、第一主服务器根据同步矩阵模型执行响应,重新生成同步矩阵模型,修改保存的服务器路由信息包含的权重值;
所述同步矩阵模型执行响应中至少包含已完成同步的从服务器的IP地址及同步完成情况;所述同步完成情况为同步成功信息或同步失败信息。
4.根据权利要求2或3所述的方法,其特征在于,步骤A所述确定需同步文件的来源路径及需同步的N级从服务器包括:
A1、从调用同步命令中获取外部输入的磁盘路径;
A2、比较磁盘路径与文件同步信息包含的来源路径,在磁盘路径与来源路径相同、或磁盘路径比来源路径更具体时,将磁盘路径作为需同步文件的来源路径,在来源路径比磁盘路径更具体时,将来源路径作为需同步文件的来源路径,在磁盘路径与来源路径完全不相同时,结束文件同步;
A3、根据文件同步信息包含的目标路径及目标服务器的IP地址,确定需同步的N级从服务器。
5.根据权利要求2或3所述的方法,其特征在于,所述生成同步矩阵模型包括:
B1、第一主服务器根据需同步的N级从服务器及服务器路由信息,获得需同步的N级从服务器间的连接关系;
B2、第一主服务器根据需同步的N级从服务器间的连接关系,生成树形数据结构,并将其作为同步矩阵模型;
所述树形数据结构包含一个父节点及多级子节点,一个父节点连接第一级子节点包含的多个子节点,每一级的每一个子节点连接至少一个下一级的子节点;所述父节点记载第一主服务器的IP地址及需同步文件的来源路径;所述子节点记载与其级数对应的从服务器的IP地址、目标文件路径及权重值。
6.根据权利要求2或3所述的方法,其特征在于,所述生成需同步文件包括:
C1、根据同步状态信息确定目标路径下的目标文件信息;
C2、将目标文件信息与需同步文件的来源路径下的原文件信息进行比较,在目标文件信息与原文件信息不完全相同时,将原文件作为需同步文件,在目标文件信息与原文件信息完全相同时,不进行同步;
所述目标文件信息至少包含目标文件名称、目标文件时间及目标文件大小;所述原文件信息至少包含原文件名称、原文件时间及原文件大小。
7.根据权利要求5所述的方法,其特征在于,步骤E所述从接收到的同步矩阵模型中截取其为主服务器的同步子矩阵模型包括:
E1、根据其IP地址,从接收到的同步矩阵模型中查找记载所述IP地址的子节点;
E2、从同步矩阵模型中选择以步骤E1所述的子节点作为父节点的树形数据结构作为同步子矩阵模型。
8.一种文件分发同步系统,其特征在于,该系统包含:第一主服务器及N级从服务器;
所述N级从服务器中的第一级从服务器连接第一主服务器,且第i级从服务器连接至少一个第i+1级从服务器;
所述第一主服务器根据接收到的调用同步命令,获得服务器路由信息、文件同步信息及同步参数,确定需同步文件的来源路径及需同步的N级从服务器,生成同步矩阵模型,并根据同步矩阵模型,从与其连接的第一级从服务器获取同步状态信息,生成需同步文件,推送需同步文件至第一级从服务器,且在第一级从服务器完成同步后,推送同步矩阵模型至第一级从服务器;
所述第i级从服务器从同步矩阵模型中截取以其为主服务器的同步子矩阵模型,根据同步子矩阵模型,从与其连接的第i+1级从服务器获取同步状态信息,生成需同步文件,推送需同步文件及同步子矩阵模型至第i+1级从服务器;
所述N为大于1的自然数;所述i为大于或等于1且小于或等于N-1的自然数。
9.根据权利要求8所述的系统,其特征在于,所述服务器路由信息至少包含N级从服务器的IP地址、第一主服务器的IP地址及用以表示服务器间通信成本的权重值;
所述文件同步信息至少包含来源路径、目标服务器的IP地址、目标路径及用以标识是否删除目标文件的标识信息;
所述同步参数至少包含矩阵数;所述矩阵数为一台服务器需要同时同步的服务器数量。
10.根据权利要求8所述的系统,其特征在于,所述第i级从服务器还根据第i+1级从服务器完成同步的情况,发送同步矩阵模型执行响应至第一主服务器;
所述第一主服务器还根据同步矩阵模型执行响应,重新生成同步矩阵模型,修改保存的服务器路由信息包含的权重值;
所述同步矩阵模型执行响应中至少包含已完成同步的从服务器的IP地址及同步完成情况;所述同步完成情况为同步成功信息或同步失败信息。
11.根据权利要求9所述的系统,其特征在于,所述第一主服务器包含:
存储模块,用以保存服务器路由信息、文件同步信息、同步参数及同步矩阵模型;
第一同步控制模块,根据接收到的调用同步命令,从存储模块读取服务器路由信息、文件同步信息及同步参数,确定需同步文件的来源路径及需同步的N级从服务器,并发送至第一模型生成模块;根据从存储模块读取的同步矩阵模型,从与其连接的第一级从服务器获取同步状态信息,生成需同步文件,通过第一链接模块推送需同步文件及同步矩阵模型至第一级从服务器;
第一模型生成模块,根据需同步文件的来源路径及需同步的N级从服务器,生成同步矩阵模型,写入存储模块;
第一链接模块,与第一级从服务器建立连接。
12.根据权利要求9所述的系统,其特征在于,所述第i级从服务器包含:
同步执行模块,根据通过第二链接模块接收到的需同步文件,完成文件的同步,并发送同步完成响应至第i-1级从服务器,将通过第二链接模块接收到的同步矩阵模型发送给第二模型生成模块;
第二模型生成模块,根据第i级从服务器的IP地址,从同步矩阵模型中截取以第i级从服务器为主服务器的同步子矩阵模型,发送同步子矩阵模型至第二同步控制模块;
第二同步控制模块,根据同步子矩阵模型,从与其连接的第i+1级从服务器中获取同步状态信息,生成需同步文件,通过第二链接模块推送需同步文件及同步子矩阵模型至第i+1级从服务器;
第二链接模块,与第i-1级从服务器和第i+1级从服务器建立连接。
CN201210065256.1A 2012-01-13 2012-01-13 一种文件分发同步方法及系统 Expired - Fee Related CN102638569B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210065256.1A CN102638569B (zh) 2012-01-13 2012-01-13 一种文件分发同步方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210065256.1A CN102638569B (zh) 2012-01-13 2012-01-13 一种文件分发同步方法及系统

Publications (2)

Publication Number Publication Date
CN102638569A CN102638569A (zh) 2012-08-15
CN102638569B true CN102638569B (zh) 2014-10-29

Family

ID=46622810

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210065256.1A Expired - Fee Related CN102638569B (zh) 2012-01-13 2012-01-13 一种文件分发同步方法及系统

Country Status (1)

Country Link
CN (1) CN102638569B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103200267A (zh) * 2013-04-11 2013-07-10 天脉聚源(北京)传媒科技有限公司 一种文件管理的方法和系统
CN103546546A (zh) * 2013-09-30 2014-01-29 蓝盾信息安全技术股份有限公司 一种大规模集群分发文件的方法
CN103731503B (zh) * 2014-01-15 2017-03-08 西安诺瓦电子科技有限公司 文件发布系统以及服务器端
CN108011683B (zh) * 2017-11-22 2019-05-17 西南电子技术研究所(中国电子科技集团公司第十研究所) 大型综合传感器系统多级分发时频统一方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101567003A (zh) * 2009-05-27 2009-10-28 清华大学 并行文件系统中资源的管理和分配方法
CN102223378A (zh) * 2011-06-28 2011-10-19 北京新媒传信科技有限公司 一种文件同步方法和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1733316A1 (en) * 2004-03-22 2006-12-20 Nitgen Technologies Inc. A streaming based contents distribution network system and methods for splitting, merging and retrieving files

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101567003A (zh) * 2009-05-27 2009-10-28 清华大学 并行文件系统中资源的管理和分配方法
CN102223378A (zh) * 2011-06-28 2011-10-19 北京新媒传信科技有限公司 一种文件同步方法和系统

Also Published As

Publication number Publication date
CN102638569A (zh) 2012-08-15

Similar Documents

Publication Publication Date Title
CN107819828B (zh) 数据传输方法、装置、计算机设备和存储介质
CN101313495B (zh) 数据同步方法、系统及装置
CN111552676A (zh) 基于区块链的存证方法、装置、设备及介质
CN108377272B (zh) 一种管理物联网终端的方法及系统
KR101431333B1 (ko) 클라우드 컴퓨팅에서 소셜리티 스토리지 서비스를 위한 데이터 페더레이션 시스템 및 그 방법
CN101902473B (zh) 基于网格gis的数据同步更新实现方法
CN106156359A (zh) 一种云计算平台下的数据同步更新方法
CN102802139A (zh) 一种物联网网关数据适配系统及方法
CN101281690A (zh) 一种教学辅助装置、系统及教学辅助方法
CN110266763B (zh) 跨网段互连的区块链网络实现方法、系统及存储介质
CN104820701A (zh) 数据记录和同步方法及系统
US10250670B2 (en) Streaming zip
CN105302920A (zh) 一种云存储数据的优化管理方法和系统
CN102638569B (zh) 一种文件分发同步方法及系统
CN105407117A (zh) 分布式备份数据的方法、装置和系统
CN103561033B (zh) 用户远程访问hdfs集群的装置及方法
CN105187523A (zh) 一种目录访问方法及装置
CN110855688B (zh) 一种区块链信息处理方法及相关设备
CN103414762A (zh) 云备份方法和装置
CN101895579A (zh) 通讯录同步方法和系统
CN113837760A (zh) 数据处理方法、装置、计算机设备以及存储介质
CN101730085B (zh) 通信录数据同步方法和系统
CN112202862B (zh) 一种基于kafka的集群数据以及文件的同步方法及装置
CN104079610A (zh) 云端服务器、应用软件的云同步方法和系统
CN105610701A (zh) 一种即时通信的方法、装置及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: SHENZHEN LONGSHI MEDIA CO., LTD.

Free format text: FORMER OWNER: SHENZHEN COSHIP VIDEO COMMUNICATION CO., LTD.

Effective date: 20130407

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20130407

Address after: 4, 518057 floor, rainbow science and technology building, north high tech Zone, Nanshan District, Guangdong, Shenzhen

Applicant after: Shenzhen Longguan Media Co., Ltd.

Address before: 518057 B2-1 District, rainbow tech building, North Fifth Industrial Zone, north high tech Zone, Nanshan District, Guangdong, Shenzhen

Applicant before: Shenzhen Tongzhou Video Media Co., Ltd.

ASS Succession or assignment of patent right

Owner name: SHENZHEN TONGZHOU ELECTRONIC CO., LTD.

Free format text: FORMER OWNER: SHENZHEN LONGSHI MEDIA CO., LTD.

Effective date: 20140522

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20140522

Address after: 518057 Nanshan District hi tech park, Guangdong, North District Rainbow science and Technology Building

Applicant after: Shenzhen Tongzhou Electronic Co., Ltd.

Address before: 4, 518057 floor, rainbow science and technology building, north high tech Zone, Nanshan District, Guangdong, Shenzhen

Applicant before: Shenzhen Longguan Media Co., Ltd.

C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20141029

Termination date: 20150113

EXPY Termination of patent right or utility model