CN106131123B - 三层架构的远程资源同步方法及系统 - Google Patents
三层架构的远程资源同步方法及系统 Download PDFInfo
- Publication number
- CN106131123B CN106131123B CN201610452507.XA CN201610452507A CN106131123B CN 106131123 B CN106131123 B CN 106131123B CN 201610452507 A CN201610452507 A CN 201610452507A CN 106131123 B CN106131123 B CN 106131123B
- Authority
- CN
- China
- Prior art keywords
- file
- list
- local
- server
- check code
- 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
Links
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
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
Abstract
本发明属于文件同步技术领域,具体涉及一种三层架构的远程资源同步方法及系统。本发明三层架构的远程资源同步方法包括以下步骤:云端服务器遍历本地目录,生成包含所有文件同步信息的列表文件;线下服务器从云端服务器获取最新列表文件与本地列表文件对比,生成删除列表与下载列表;线下服务器根据所述删除列表对本地文件进行删除处理;线下服务器根据所述下载列表从云端服务器下载相应文件;播放终端通过局域网获取线下服务器更新后的列表文件中的播放资源文件目录,并根据播放资源文件目录的下载地址获取播放资源。通过采用本发明的技术方案,可以方便高效地从云服务器同步更新的文件到播放终端。
Description
技术领域
本发明属于文件同步技术领域,具体涉及一种三层架构的远程资源同步方法及系统。
背景技术
在数字视听场所(例如KTV、酒吧等场所)的点播应用场景中,播放终端需要使用到大量的资源文件,例如歌曲,视频,图片、简介等,为保证同一场所内每个播放终端的文件内容一致,通常这些文件是由数据中心进行统一的管理,包括增加新的文件,修改文件,删除文件等处理,播放终端再从数据中心同步文件到本地。
传统的文件同步方式为,播放终端每次将本地数据全部删除,再将数据中心的所有文件全量同步到本地,这样操作虽然在实现上方便简单,不用关心数据中心对文件做了哪些操作,但是只适合数据中心文件变化非常大的情况,如果每次数据中心更新的文件不多,这种方式效率就非常低,严重浪费时间和网络资源。
一种改进的方式为,播放终端直接连接数据中心,通过遍历数据中心的文件目录结构,和本地目录结构进行比对,逐个文件判断是否一致,若不一致则同步到本地,一致则不同步。采用这种方式,播放终端直接与数据中心交互,这样当数据中心的目录发生更新时,所有的播放终端的目录都需要进行更新一次,更新后对新的播放资源还需进行下载;而且播放终端不仅需要更新播放资源的目录,还需要更新其他目录,例如,播放资源管理目录,播放资源计费目录等等,大大增加播放终端的数据更新量和数据下载量。即使在同一个局域网中的多个播放终端,也无法共享数据,每个播放终端都需进行单独更新目录和播放资源。
发明内容
本发明的目的之一在于克服以上缺点,实现方便地从云服务器同步文件到播放终端,同时提高同步的效率。
为了解决上述技术问题,本发明提供了一种三层架构的远程资源同步方法,包括以下步骤:
云端服务器遍历本地目录,生成包含所有文件同步信息的列表文件;
线下服务器从云端服务器获取最新列表文件与本地列表文件对比,生成删除列表与下载列表;
线下服务器根据所述删除列表对本地文件进行删除处理;
线下服务器根据所述下载列表从云端服务器下载相应文件;
播放终端通过局域网获取线下服务器更新后的列表文件中的播放资源文件目录,并根据播放资源文件目录的下载地址获取播放资源。
通过采用列表文件的方式保存所有文件同步信息,列表文件更新时,线下服务器只要和云端服务器交互一次,即从云端服务器获取最新列表文件,就可以在本地进行两者目录结构信息的对比,降低由于网络因素导致对比处理中断的机率。
通过将最新列表文件与本地列表文件进行对比生成差异列表,后续线下服务器只需要对差异部分内容进行处理,不需要全量更新所有文件,可缩短同步的时间,减少网络带宽的占用,提高了文件同步效率。
当列表文件更新后,针对列表文件中新增或变更的播放资源,线下服务器根据播放资源的下载地址从云端服务器进行下载。这样,处于同一个局域网中所有的播放终端需要播放更新后的播放资源时,只需通过局域网从线下服务器进行下载,所有播放终端无需通过网络直接从云端服务器下载资源。
进一步地,所述文件同步信息包括:文件路径、下载链接、版本号和校验码。
进一步地,所述线下服务器从云端服务器获取最新列表文件与本地列表文件对比,生成删除列表与下载列表,包括以下步骤:
若最新列表文件版本号大于本地列表文件版本号,则进行后续处理,否则不进行处理;
若最新列表文件与本地列表文件存在相同的文件记录,进一步判断,若该文件记录在最新列表文件中的版本号大于本地列表文件中的版本号,则将该文件记录添加至下载列表,否则不处理;
若有最新列表文件中存在而本地列表文件中不存在的文件记录,则将该文件记录添加至下载列表;
若有最新列表文件中不存在而本地列表文件中存在的文件记录,则将该文件记录添加至删除列表。
本发明技术方案中,列表文件对比步骤与更新处理步骤没有采用串行的执行方式,在对比步骤中,将所有需要进行更新的文件记录形成下载列表或删除列表,然后再集中进行下载或删除操作;相对于将比对及逐条的下载或删除相结合的操作,本发明大大提高了列表文件的更新速度。
进一步地,所述线下服务器根据删除列表对本地文件进行删除处理,包括以下步骤:
从删除列表中获取文件路径并删除该文件;
再将本地列表文件中对应的文件记录删除。
进一步地,所述线下服务器根据下载列表从云端服务器下载相应文件,可以具体为:
从云端服务器下载相应文件至本地,并计算校验码;
判断计算的校验码与最新列表文件中对应文件的校验码是否一致;
若计算的校验码与最新列表文件中对应文件的校验码一致,则将该文件记录添加到本地列表文件中;
若计算的校验码与最新列表文件中对应文件的校验码不一致,则将本地列表文件中对应的文件记录删除。
进一步地,所述线下服务器根据下载列表从云端服务器下载相应文件,还可以具体为:
从云端服务器下载相应文件至本地,并计算校验码;
判断计算的校验码与最新列表文件中对应文件的校验码是否一致;
若计算的校验码与最新列表文件中对应文件的校验码一致,则将该文件记录添加到本地列表文件中;
若计算的校验码与最新列表文件中对应文件的校验码不一致,则将最新列表文件复制为临时列表文件,并将所述临时列表文件中对应的文件记录删除;后续处理若计算的校验码与临时列表文件中对应文件的校验码一致,则不处理临时列表文件,否则从临时列表文件中将对应的文件记录删除;待全部文件下载处理完成后,用临时列表文件覆盖本地列表文件。
通过下载完成后重新计算校验码,再与最新列表文件中对应文件的校验码进行对比,可以确保下载文件的完整性。
相应地,本发明还提供了一种三层架构的远程资源同步系统,包括云端服务器、线下服务器和播放终端,其中,
云端服务器,通过互联网与线下服务器相连接,用于文件的集中存储以及生成最新列表文件;
线下服务器,通过互联网与云端服务器相连接,通过局域网和播放终端相连接,用于从云端服务器获取最新列表文件,并根据最新列表文件同步文件至本地;
播放终端,通过局域网和线下服务器相连接,用于获取线下服务器更新后的列表文件中的播放资源文件目录,并根据播放资源文件目录的下载地址获取播放资源。
通过采用三层模式,线下服务器作为中间层起到了数据转储的功能,通过从云端服务器增量同步数据,提高了同步效率,降低了网络开销,同时也为在同一局域网内的播放终端同步数据提供更可靠,快速的数据来源。另外,线下服务器也可以起到数据备份的作用,可以将云服务器设备故障导致文件丢失的机率降到最低。
进一步地,所述线下服务器从云端服务器获取最新列表文件,并根据最新列表文件同步文件至本地,包括以下步骤:
线下服务器从云端服务器获取最新列表文件与本地列表文件对比,生成删除列表与下载列表;
线下服务器根据所述删除列表对本地文件进行删除处理;
线下服务器根据所述下载列表从云端服务器下载相应文件。
进一步地,所述线下服务器从云端服务器获取最新列表文件与本地列表文件对比,生成删除列表与下载列表,包括以下步骤:
若最新列表文件版本号大于本地列表文件版本号,则进行后续处理,否则不进行处理;
若最新列表文件与本地列表文件存在相同的文件记录,进一步判断,若该文件记录在最新列表文件中的版本号大于本地列表文件中的版本号,则将该文件记录添加至下载列表,否则不处理;
若有最新列表文件中存在而本地列表文件中不存在的文件记录,则将该文件记录添加至下载列表;
若有最新列表文件中不存在而本地列表文件中存在的文件记录,则将该文件记录添加至删除列表。
进一步地,所述线下服务器根据删除列表对本地文件进行删除处理,包括以下步骤:
从删除列表中获取文件路径并删除该文件;
再将本地列表文件中对应的文件记录删除。
进一步地,所述线下服务器根据下载列表从云端服务器下载相应文件,可以具体为:
从云端服务器下载相应文件至本地,并计算校验码;
判断计算的校验码与最新列表文件中对应文件的校验码是否一致;
若计算的校验码与最新列表文件中对应文件的校验码一致,则将该文件记录添加到本地列表文件中;
若计算的校验码与最新列表文件中对应文件的校验码不一致,则将本地列表文件中对应的文件记录删除。
进一步地,所述线下服务器根据下载列表从云端服务器下载相应文件,还可以具体为:
从云端服务器下载相应文件至本地,并计算校验码;
判断计算的校验码与最新列表文件中对应文件的校验码是否一致;
若计算的校验码与最新列表文件中对应文件的校验码一致,则将该文件记录添加到本地列表文件中;
若计算的校验码与最新列表文件中对应文件的校验码不一致,则将最新列表文件复制为临时列表文件,并将所述临时列表文件中对应的文件记录删除;后续处理若计算的校验码与临时列表文件中对应文件的校验码一致,则不处理临时列表文件,否则从临时列表文件中将对应的文件记录删除;待全部文件下载处理完成后,用临时列表文件覆盖本地列表文件。
综上所述,本发明技术方案的有益效果有:
通过采用列表文件的方式保存所有文件同步信息,线下服务器只要从云端服务器获取最新列表文件,就可以在本地进行两者目录结构信息的对比,从而降低了由网络因素导致对比处理中断的机率。另外,列表文件对比步骤与更新处理步骤没有采用串行的执行方式,在对比步骤中,将所有需要进行更新的文件记录形成下载列表或删除列表,然后再集中进行下载或删除操作;相对将比对及逐条的下载或删除相结合的操作,本发明大大提高了列表文件的更新速度。
通过下载完成后重新计算校验码,再与最新列表文件中对应文件的校验码进行对比,可以确保下载文件的完整性。
本发明采用三层模式,线下服务器通过互联网从云端服务器增量更新变化的文件目录,再通过更新的文件目录只下载对应更新的资源,未发生变化的资源无需进行下载,大大减少了资源数据的下载量。同时,与线下服务器在同一局域网中的所有播放终端,直接通过局域网从线下服务器获取更新后的播放资源,使得播放终端资源更新更便利,无需所有播放终端单独从数据中心逐一下载更新的播放资源,大大降低网络数据下载量。
采用本发明的三层模式,线下服务器可作为中间层起到了数据转储的功能,通过从云端服务器增量同步数据,提高了同步效率,降低了网络开销,同时也为在同一局域网内的播放终端同步数据提供更可靠,快速的数据来源。另外,线下服务器也可起到管理功能,对处于同一个局域网的所有播放终端进行管理,而播放终端只需负责多媒体资源的播放,大大减少播放终端的负载。
另外,线下服务器还可起到数据备份的作用,可以将云服务器设备故障导致文件丢失的机率降到最低。
附图说明
图1是本发明的一种三层架构的远程资源同步方法步骤流程图。
图2是本发明的一种线下服务器将最新列表文件与本地列表文件对比步骤流程图。
图3是本发明的一种线下服务器删除本地文件步骤流程图。
图4是本发明的一种线下服务器下载文件步骤流程图。
图5是本发明的另一种线下服务器下载文件步骤流程图。
图6是本发明的一种三层架构的远程资源同步系统结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1,是本发明的一种三层架构的远程资源同步方法步骤流程图,包括以下步骤:
步骤1,云端服务器遍历本地目录,生成包含所有文件同步信息的列表文件;
本发明所述云端服务器,部署在互联网上,作用是对文件进行集中存储和统一的管理,随着业务的变更,云端服务器上的文件会相应发生变化,这里的变化通常包括:增加新的文件,文件内容的修改,文件存放路径变化,以及文件的删除等等。
当云端服务器上的文件发生变化后,为将当前所有文件记录保存下来,云端服务器遍历本地目录,生成包含所有文件同步信息的列表文件,其中每条记录对应一个文件,每个文件的同步信息包括:
该文件在云端服务器存储的完整的路径,包括目录路径和文件名;
下载链接,用于告诉线下服务器该文件的互联网下载地址;
版本号,用于区分该文件是否发生过变化,文件每一次变化都会更新版本号,没有发生变化则不更新版本号,例如,版本号可以是一个不断增大的整数,每次文件变化,该数值就增加1;优选地,可以用文件修改的时间戳作为版本号,例如,20160601175959100,其中20160601表示日期,175959表示时间,100表示毫秒,采用时间戳的好处在于,它是不断增大且不会重复的数值,同时也可以直观地知道文件修改时间;
校验码,云端服务器通过加密算法对原始文件进行计算后生成,当线下服务器下载结束后,采用相同算法对下载的文件重新计算校验码后相互比对,如果两者不一致,说明下载不完整,或者文件内容被非法修改,从而保证下载文件的完整性和安全性。目前,常用的加密算法有MD5,CRC,SHA1等。
在实际的应用场景中,云端服务器生成最新列表文件的时间可以根据实际情况调整,例如,在文件更新不频繁的情况下,云端服务器可以在每次有文件变化的时候生成最新列表文件,保证线下服务器可以及时地获取更新;在文件频繁更新的场景中,就不适合每次文件变化都生成最新列表文件,可以采用设定时间间隔,定时生成最新列表文件,减轻云端服务器的处理压力。
步骤2,线下服务器从云端服务器获取最新列表文件与本地列表文件对比,生成删除列表与下载列表;
通过采用列表文件的方式,线下服务器可以先从云端服务器下载最新列表文件后,在本地继续进行后续比对操作,和云端服务器的交互时间缩短,从而降低了传统方式中长时间与云端服务器连接比对文件差异时可能由于网络异常导致的处理中断机率。在列表文件更新后,线下服务器只需对发生变化的文件下载对应的资源,未发生变化的文件对应的资源则不进行下载,大大减少数据的下载量。如图2,是本发明的一种线下服务器将最新列表文件与本地列表文件对比步骤流程图,包括如下步骤:
步骤201,若最新列表文件版本号大于本地列表文件版本号,则进行后续处理,否则不进行处理;
在本发明的技术方案中,云端服务器在每次遍历本地目录生成最新列表文件时,同样会生成整个列表文件的版本号,通常版本号可以通过列表文件名体现,例如,可以用生成列表文件的时间戳作为版本号,既可以保证版本号是不断增大且不会重复的数值,也可以直观地知道列表文件生成的具体时间,例如,20151201125959200,其中20151201表示日期,125959表示时间,200表示毫秒。线下服务器下载最新列表文件之后,会将该时间戳与本地列表文件的时间戳进行比较,如果两者一致,说明云端服务器上的文件没有进行更新,和上一次的状态保持一致,不需要进行更新同步操作;如果时间戳不一致,说明云端服务器上的文件状态有发生变化,就必须进行后续的详细对比操作。
步骤202,若最新列表文件与本地列表文件存在相同的文件记录,进一步判断,若该文件记录在最新列表文件中的版本号大于本地列表文件中的版本号,则将该文件记录添加至下载列表,否则不处理;
线下服务器将最新列表文件与本地列表文件进行比较,这里的比较主要是根据文件记录信息中的文件存放路径(包括文件名)来进行,如果存在文件存放路径完全相同的记录,说明了本地已经存在该文件,则需要进一步通过版本号信息来判断文件是否发生过变化。如果版本号一致,表明文件没有发生变化,不需要同步;如果最新列表文件中该文件记录的版本号大于本地列表文件中该文件记录的版本号,则将该文件的存放路径作为下载保存地址与该文件互联网下载地址一起添加至下载列表,后续进行异步的下载处理。
步骤203,若有最新列表文件中存在而本地列表文件中不存在的文件记录,则将该文件记录添加至下载列表;
如果最新列表文件中存在某文件存放路径(包括文件名),而在本地列表文件找不到相同的文件存放路径,可能是以下几种情况:云端服务器新增的文件记录;文件路径没有变化,但是文件名改变;文件名称没有变化,但被移动到新的目录路径中。在这些情况下,线下服务器都必须对这些变化后的文件进行同步,将该文件的存放路径作为下载保存地址与该文件互联网下载地址一起添加至下载列表,后续进行异步的下载处理。
步骤204,若有最新列表文件中不存在而本地列表文件中存在的文件记录,则将该文件记录添加至删除列表。
如果本地列表文件中存在某文件存放路径(包括文件名),而在最新列表文件找不到相同的文件存放路径,可能是以下几种情况:云端服务器文件删除;文件路径没有变化,但是文件名改变了,本地列表文件中保存的还是旧文件名的文件记录;文件名没有变化,但被移动到新的目录路径中,本地列表文件中保存的还是旧路径的文件记录。这种情况下,线下服务器将这些旧记录的文件存放路径保存到删除列表中,后续进行统一删除。
步骤3,线下服务器根据所述删除列表对本地文件进行删除处理;如图3,是本发明的一种线下服务器删除本地文件步骤流程图,包括:
步骤301,从删除列表中获取文件路径并删除该文件;针对删除列表中的每一个待删除文件记录,根据删除列表中保存的其在线下服务器上的文件存放路径,找到相应文件并删除。
步骤302,再将本地列表文件中对应的文件记录删除。待本地存储的文件删除成功后,将本地列表文件中对应的文件记录删除,保证本地列表文件与云端服务器获取的最新列表文件一致。
步骤4,线下服务器根据所述下载列表从云端服务器下载相应文件;
如图4,是本发明的一种线下服务器下载文件步骤流程图,包括:
步骤401,从云端服务器下载相应文件至本地,并计算校验码;线下服务器根据下载列表中所记录的互联网下载地址,将云端服务器新增的文件下载到本地对应文件路径下,下载完成后,使用和云端服务器约定好相同的校验算法对下载文件进行计算生成校验码。常用的校验算法有MD5,CRC,SHA1等。
步骤402,判断计算的校验码与最新列表文件中对应文件的校验码是否一致;
步骤403,若计算的校验码与最新列表文件中对应文件的校验码一致,则说明文件下载成功,再将该文件记录添加到本地列表文件中,与云端服务器获取的最新列表文件保持一致;
步骤404,若计算的校验码与最新列表文件中对应文件的校验码不一致,则说明文件下载不完整,或者数据被修改,这种情况下若本地列表文件中存在对应文件记录,需删除该文件记录,等待下一次对比的时候重新更新。
如图5,是本发明的另一种线下服务器下载文件步骤流程图,包括:
步骤411,从云端服务器下载相应文件至本地,并计算校验码;线下服务器根据下载列表中所记录的互联网下载地址,将云端服务器新增的文件下载到本地对应文件路径下,下载完成后,使用和云端服务器约定好相同的校验算法对下载文件进行计算生成校验码。常用的校验算法有MD5,CRC,SHA1等。
步骤412,判断计算的校验码与最新列表文件中对应文件的校验码是否一致;
步骤413,若计算的校验码与最新列表文件中对应文件的校验码一致,则说明文件下载成功,再将该文件记录添加到本地列表文件中,与云端服务器获取的最新列表文件保持一致;
步骤414,当首次发现计算的校验码与最新列表文件中对应文件的校验码不一致的时候,本技术方案不采用从本地列表文件中删除对应文件记录的方式,而是将最新列表文件复制为临时列表文件,并将所述临时列表文件中对应的文件记录删除;后续的下载处理中,若计算的校验码与临时列表文件中对应文件的校验码一致,也不用将该文件记录添加到本地列表文件中,因为临时列表文件中已经包含了该文件;若还有计算的校验码与最新列表文件中对应文件的校验码不一致的情况,只要从临时列表文件中将对应的文件记录删除即可;待全部文件下载处理完成后,用临时列表文件覆盖本地列表文件,替换上一版本的本地列表文件,保证本地文件列表和本地文件的一致性。
步骤5,播放终端通过局域网获取线下服务器更新后的列表文件中的播放资源文件目录,并根据播放资源文件目录的下载地址获取播放资源。由于播放终端主要负责资源内容的播放,所以只需要更新播放资源文件目录,而播放资源管理目录,播放资源计费目录等等都是线下服务器管理用的目录,可以不用更新。另外,播放终端与线下服务器在局域网中,传输速率快,因此播放终端再从线下服务器同步文件的时候,可以采用全量更新的方式,即每次将本地数据全部删除,再将线下服务器的所有文件全量同步到本地。
如图6,是本发明的一种三层架构的远程资源同步系统结构图,包括云端服务器、线下服务器和播放终端,其中,
云端服务器,通过互联网与线下服务器相连接,用于文件的集中存储、管理以及生成最新列表文件;
线下服务器,通过互联网与云端服务器相连接,通过局域网和播放终端相连接,用于从云端服务器获取最新列表文件,并根据最新列表文件同步文件至本地;
播放终端,通过局域网和线下服务器相连接,用于获取线下服务器更新后的列表文件中的播放资源文件目录,并根据播放资源文件目录的下载地址获取播放资源。
本发明采用三层模式,线下服务器通过互联网从云端服务器增量更新变化的文件目录,再通过更新的文件目录只下载对应更新的资源,未发生变化的资源无需进行下载,大大减少了资源数据的下载量。同时,与线下服务器在同一局域网中的所有播放终端,直接通过局域网从线下服务器获取更新后的播放资源,使得播放终端资源更新更便利,无需所有播放终端单独从数据中心逐一下载更新的播放资源,大大降低网络数据下载量。
采用本发明的三层模式,线下服务器可作为中间层起到了数据转储的功能,通过从云端服务器增量同步数据,提高了同步效率,降低了网络开销,同时也为在同一局域网内的播放终端同步数据提供更可靠,快速的数据来源。另外,线下服务器也可起到管理功能,对处于同一个局域网的所有播放终端进行管理,而播放终端只需负责多媒体资源的播放,大大减少播放终端的负载。
另外,线下服务器还可起到数据备份的作用,可以将云服务器设备故障导致文件丢失的机率降到最低。
本发明的三层架构的远程资源同步系统中,线下服务器从云端服务器获取最新列表文件,并根据最新列表文件同步文件至本地,包括以下几个步骤:
步骤1,线下服务器从云端服务器获取最新列表文件,若最新列表文件版本号大于本地列表文件版本号,说明云端服务器的文件发生了变化,需要进行对比操作,具体为:若最新列表文件与本地列表文件存在相同的文件记录,进一步判断,若该文件记录在最新列表文件中的版本号大于本地列表文件中的版本号,则将该文件记录添加至下载列表,否则不处理;若有最新列表文件中存在而本地列表文件中不存在的文件记录,则将该文件记录添加至下载列表;若有最新列表文件中不存在而本地列表文件中存在的文件记录,则将该文件记录添加至删除列表。
步骤2,线下服务器从删除列表中获取文件路径并删除该文件,再将本地列表文件中对应的文件记录删除。
步骤3,线下服务器根据下载列表从云端服务器下载相应文件,具体为:从云端服务器下载相应文件至本地,并重新计算校验码;如果计算的校验码与最新列表文件中对应文件的校验码一致,则说明下载成功,将该文件记录添加到本地列表文件中;如果计算的校验码与最新列表文件中对应文件的校验码不一致,则说明下载失败,这种情况下若本地列表文件中存在对应文件记录,需删除该文件记录,等待下一次对比的时候重新更新。
在一具体的实施例中,上述步骤3线下服务器根据下载列表从云端服务器下载相应文件,还可以具体为:从云端服务器下载相应文件至本地,并计算校验码;判断计算的校验码与最新列表文件中对应文件的校验码是否一致;若计算的校验码与最新列表文件中对应文件的校验码一致,则将该文件记录添加到本地列表文件中;若计算的校验码与最新列表文件中对应文件的校验码不一致,则将最新列表文件复制为临时列表文件,并将所述临时列表文件中对应的文件记录删除;后续处理若计算的校验码与临时列表文件中对应文件的校验码一致,则不处理临时列表文件,否则从临时列表文件中将对应的文件记录删除;待全部文件下载处理完成后,用临时列表文件覆盖本地列表文件。通过该方式,同样能够实现线下服务器根据下载列表从云端服务器下载相应文件后,保证本地文件和本地列表文件的一致性。
上述具体实施方式只是对本发明的技术方案进行详细解释,本发明并不只仅仅局限于上述实施例,凡是依据本发明原理的任何改进或替换,均应在本发明的保护范围之内。
Claims (12)
1.一种三层架构的远程资源同步方法,其特征在于,包括以下步骤:
云端服务器遍历本地目录,生成包含所有文件同步信息的列表文件;
线下服务器从云端服务器获取最新列表文件与本地列表文件对比,生成删除列表与下载列表;
线下服务器根据所述删除列表对本地文件进行删除处理;
线下服务器根据所述下载列表从云端服务器下载相应文件;
播放终端通过局域网获取线下服务器更新后的列表文件中的播放资源文件目录,并根据播放资源文件目录的下载地址获取播放资源。
2.如权利要求1所述的三层架构的远程资源同步方法,其特征在于,所述文件同步信息包括:文件路径、下载链接、版本号和校验码。
3.如权利要求1所述的三层架构的远程资源同步方法,其特征在于,所述线下服务器从云端服务器获取最新列表文件与本地列表文件对比,生成删除列表与下载列表,包括以下步骤:
若最新列表文件版本号大于本地列表文件版本号,则进行后续处理,否则不进行处理;
若最新列表文件与本地列表文件存在相同的文件记录,进一步判断,若该文件记录在最新列表文件中的版本号大于本地列表文件中的版本号,则将该文件记录添加至下载列表,否则不处理;
若有最新列表文件中存在而本地列表文件中不存在的文件记录,则将该文件记录添加至下载列表;
若有最新列表文件中不存在而本地列表文件中存在的文件记录,则将该文件记录添加至删除列表。
4.如权利要求1所述的三层架构的远程资源同步方法,其特征在于,所述线下服务器根据删除列表对本地文件进行删除处理,包括以下步骤:
从删除列表中获取文件路径并删除该文件;
再将本地列表文件中对应的文件记录删除。
5.如权利要求1所述的三层架构的远程资源同步方法,其特征在于,所述线下服务器根据下载列表从云端服务器下载相应文件,可以具体为:
从云端服务器下载相应文件至本地,并计算校验码;
判断计算的校验码与最新列表文件中对应文件的校验码是否一致;
若计算的校验码与最新列表文件中对应文件的校验码一致,则将所述从云端服务器下载相应文件的记录添加到本地列表文件中;
若计算的校验码与最新列表文件中对应文件的校验码不一致,则将本地列表文件中对应的文件记录删除。
6.如权利要求1所述的三层架构的远程资源同步方法,其特征在于,所述线下服务器根据下载列表从云端服务器下载相应文件,还可以具体为:
从云端服务器下载相应文件至本地,并计算校验码;
判断计算的校验码与最新列表文件中对应文件的校验码是否一致;
若计算的校验码与最新列表文件中对应文件的校验码一致,则将所述从云端服务器下载相应文件的记录添加到本地列表文件中;
若计算的校验码与最新列表文件中对应文件的校验码不一致,则将最新列表文件复制为临时列表文件,并将所述临时列表文件中对应的文件记录删除;后续处理若计算的校验码与临时列表文件中对应文件的校验码一致,则不处理临时列表文件,否则从临时列表文件中将对应的文件记录删除;待全部文件下载处理完成后,用临时列表文件覆盖本地列表文件。
7.一种三层架构的远程资源同步系统,其特征在于,包括云端服务器、线下服务器和播放终端,其中,
云端服务器,通过互联网与线下服务器相连接,用于文件的集中存储以及生成最新列表文件;
线下服务器,通过互联网与云端服务器相连接,通过局域网和播放终端相连接,用于从云端服务器获取最新列表文件,并根据最新列表文件同步文件至本地;
播放终端,通过局域网和线下服务器相连接,用于获取线下服务器更新后的列表文件中的播放资源文件目录,并根据播放资源文件目录的下载地址获取播放资源。
8.如权利要求7所述的三层架构的远程资源同步系统,其特征在于,所述线下服务器从云端服务器获取最新列表文件,并根据最新列表文件同步文件至本地,包括以下步骤:
线下服务器从云端服务器获取最新列表文件与本地列表文件对比,生成删除列表与下载列表;
线下服务器根据所述删除列表对本地文件进行删除处理;
线下服务器根据所述下载列表从云端服务器下载相应文件。
9.如权利要求8所述的三层架构的远程资源同步系统,其特征在于,所述线下服务器从云端服务器获取最新列表文件与本地列表文件对比,生成删除列表与下载列表,包括以下步骤:
若最新列表文件版本号大于本地列表文件版本号,则进行后续处理,否则不进行处理;
若最新列表文件与本地列表文件存在相同的文件记录,进一步判断,若该文件记录在最新列表文件中的版本号大于本地列表文件中的版本号,则将该文件记录添加至下载列表,否则不处理;
若有最新列表文件中存在而本地列表文件中不存在的文件记录,则将该文件记录添加至下载列表;
若有最新列表文件中不存在而本地列表文件中存在的文件记录,则将该文件记录添加至删除列表。
10.如权利要求8所述的三层架构的远程资源同步系统,其特征在于,所述线下服务器根据删除列表对本地文件进行删除处理,包括以下步骤:
从删除列表中获取文件路径并删除该文件;
再将本地列表文件中对应的文件记录删除。
11.如权利要求8所述的三层架构的远程资源同步系统,其特征在于,所述线下服务器根据下载列表从云端服务器下载相应文件,可以具体为:
从云端服务器下载相应文件至本地,并计算校验码;
判断计算的校验码与最新列表文件中对应文件的校验码是否一致;
若计算的校验码与最新列表文件中对应文件的校验码一致,则将所述从云端服务器下载相应文件的记录添加到本地列表文件中;
若计算的校验码与最新列表文件中对应文件的校验码不一致,则将本地列表文件中对应的文件记录删除。
12.如权利要求8所述的三层架构的远程资源同步系统,其特征在于,所述线下服务器根据下载列表从云端服务器下载相应文件,还可以具体为:
从云端服务器下载相应文件至本地,并计算校验码;
判断计算的校验码与最新列表文件中对应文件的校验码是否一致;
若计算的校验码与最新列表文件中对应文件的校验码一致,则将所述从云端服务器下载相应文件的记录添加到本地列表文件中;
若计算的校验码与最新列表文件中对应文件的校验码不一致,则将最新列表文件复制为临时列表文件,并将所述临时列表文件中对应的文件记录删除;后续处理若计算的校验码与临时列表文件中对应文件的校验码一致,则不处理临时列表文件,否则从临时列表文件中将对应的文件记录删除;待全部文件下载处理完成后,用临时列表文件覆盖本地列表文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610452507.XA CN106131123B (zh) | 2016-06-21 | 2016-06-21 | 三层架构的远程资源同步方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610452507.XA CN106131123B (zh) | 2016-06-21 | 2016-06-21 | 三层架构的远程资源同步方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106131123A CN106131123A (zh) | 2016-11-16 |
CN106131123B true CN106131123B (zh) | 2019-03-29 |
Family
ID=57470643
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610452507.XA Active CN106131123B (zh) | 2016-06-21 | 2016-06-21 | 三层架构的远程资源同步方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106131123B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108282501B (zh) * | 2017-01-05 | 2021-03-09 | 阿里巴巴集团控股有限公司 | 一种云服务器资源信息同步方法、装置和系统 |
CN107577718A (zh) * | 2017-08-10 | 2018-01-12 | 上海斐讯数据通信技术有限公司 | 一种网盘服务器和终端的文件同步的方法和系统 |
CN108124188B (zh) * | 2017-11-29 | 2021-01-01 | 深圳市高声高电子有限公司 | 一种影音系统运行方法 |
CN108769212B (zh) * | 2018-05-31 | 2023-04-07 | 康键信息技术(深圳)有限公司 | 数据同步方法、装置、计算机设备和存储介质 |
CN111723049A (zh) * | 2019-03-19 | 2020-09-29 | 北京奇虎科技有限公司 | 一种文件目录更新方法及装置 |
CN110139185A (zh) * | 2019-06-01 | 2019-08-16 | 厦门市思芯微科技有限公司 | 一种ai智能音箱播放列表的管理系统 |
CN111880967A (zh) * | 2020-07-28 | 2020-11-03 | 平安科技(深圳)有限公司 | 云场景下的文件备份方法、装置、介质和电子设备 |
CN112527369B (zh) * | 2020-12-31 | 2024-02-27 | 神思电子技术股份有限公司 | 一种智能终端的资源更新方法 |
CN113120039B (zh) * | 2021-04-23 | 2022-07-15 | 卡斯柯信号有限公司 | 一种兼容单机和双机运营场景的运行图文件自动获取方法 |
CN117093543A (zh) * | 2023-10-19 | 2023-11-21 | 南京酷开智慧屏科技有限公司 | 车语屏文件管理系统、文件管理方法及设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079683A (zh) * | 2007-06-27 | 2007-11-28 | 中国移动通信集团四川有限公司 | 数据一致性处理方法 |
CN101770515A (zh) * | 2010-01-18 | 2010-07-07 | 杭州顺网科技股份有限公司 | 一种基于数据块比较的数据更新方法 |
CN101873354A (zh) * | 2010-06-24 | 2010-10-27 | 中兴通讯股份有限公司 | 一种交互式电视中的数据同步方法及系统 |
CN103634445A (zh) * | 2013-11-19 | 2014-03-12 | 广州云宏信息科技有限公司 | 来电显示方法及装置 |
CN104023085A (zh) * | 2014-06-25 | 2014-09-03 | 武汉大学 | 一种基于增量同步的安全云存储系统 |
JP2016018507A (ja) * | 2014-07-10 | 2016-02-01 | キヤノン株式会社 | データ同期システム、その制御方法、認可サーバー、およびそのプログラム |
-
2016
- 2016-06-21 CN CN201610452507.XA patent/CN106131123B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079683A (zh) * | 2007-06-27 | 2007-11-28 | 中国移动通信集团四川有限公司 | 数据一致性处理方法 |
CN101770515A (zh) * | 2010-01-18 | 2010-07-07 | 杭州顺网科技股份有限公司 | 一种基于数据块比较的数据更新方法 |
CN101873354A (zh) * | 2010-06-24 | 2010-10-27 | 中兴通讯股份有限公司 | 一种交互式电视中的数据同步方法及系统 |
CN103634445A (zh) * | 2013-11-19 | 2014-03-12 | 广州云宏信息科技有限公司 | 来电显示方法及装置 |
CN104023085A (zh) * | 2014-06-25 | 2014-09-03 | 武汉大学 | 一种基于增量同步的安全云存储系统 |
JP2016018507A (ja) * | 2014-07-10 | 2016-02-01 | キヤノン株式会社 | データ同期システム、その制御方法、認可サーバー、およびそのプログラム |
Also Published As
Publication number | Publication date |
---|---|
CN106131123A (zh) | 2016-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106131123B (zh) | 三层架构的远程资源同步方法及系统 | |
US11245758B2 (en) | System and method for automatic cloud-based full-data restore to mobile devices | |
US11354065B2 (en) | Cloud edition and retrieve | |
US20200334205A1 (en) | Synchronizing metadata in a data storage platform comprising multiple computer nodes | |
CN104156278B (zh) | 一种文件版本控制系统及其方法 | |
US20160042046A1 (en) | Distributed data store | |
CN110138588A (zh) | 配置文件自动化管理方法和系统、配置管理平台和客户端 | |
CN103177082B (zh) | 主服务器、从服务器、索引同步系统和索引同步方法 | |
CN109542330B (zh) | 数据存储方法、数据查询方法及装置 | |
CN103841180B (zh) | 一种基于操作指令的网络数据同步方法、装置、终端设备和服务器 | |
US11853581B2 (en) | Restoring a storage system using file relocation metadata | |
US20090276476A1 (en) | Peer-to-peer data archiving and retrieval system | |
CN105593839B (zh) | 分布式灾难恢复文件同步服务器系统 | |
JP2019021284A (ja) | IoT装置がデータセンタでバックアップするための分散型重複データ削除記憶システム及びその分散型重複データ削除を実現する方法 | |
CN106850724B (zh) | 数据推送方法及装置 | |
US11347694B2 (en) | Efficient change block tracking in a distributed generation-id (GID) based log structured file system (LSFS) | |
CN105847374A (zh) | 终端信息同步方法、装置及信息同步系统 | |
US20230108138A1 (en) | Techniques for preserving clone relationships between files | |
KR100810877B1 (ko) | 분산 시스템에서의 데이터 미러링 복원 | |
CN108881452B (zh) | 一种数据同步的方法、装置及存储介质 | |
JP2002318716A (ja) | 配信システム、配信方法、サーバコンピュータ、クライアントコンピュータ | |
CN115361269B (zh) | 一种应急广播设备热备份方法 | |
CN113568871A (zh) | 一种医疗边缘设备电力管理实时自动同步的方法 | |
JP4088650B2 (ja) | 情報配布方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |