一种同步文件的方法及装置制造方法及图纸

技术编号:15194200 阅读:60 留言:0更新日期:2017-04-20 15:51
本发明专利技术公开了一种同步文件的方法及装置,用以实现服务器间实时同步文件的目的。方法包括:在内容服务器上安装数据镜像备份工具rsync,并建立第一认证文件以及配置有rsync的相关参数的配置文件;在发布服务器上安装rsync和监控工具inotify,并建立第二认证文件以及文件同步脚本;在所述发布服务器上运行所述文件同步脚本,以通过inotify监控所述发布服务器上包含文件的指定目录,当监控到所述指定目录中的文件发生变化时,调用rsync将所述指定目录中发生变化的文件同步至所述内容服务器。

【技术实现步骤摘要】

本专利技术涉及计算机应用
,特别涉及一种同步文件的方法及装置。
技术介绍
rsync(remotesynchronize)是类unix系统下的数据镜像备份工具,与传统的备份方式相比,rsync具有安全性高、备份迅速、支持增量备份等优点,通过rsync可以解决对实时性要求不高的数据备份需求,例如定期的备份文件服务器数据到远端服务器,对本地磁盘定期做数据镜像等。随着应用系统规模的不断扩大,对数据的安全性和可靠性也提出更多的要求,rsync在高端业务系统中也逐渐暴露出了很多不足。首先,rsync同步数据时,需要扫描所有文件后进行比对,进行差量传输。如果文件数量达到了百万甚至千万量级,扫描所有文件将是非常耗时的。而且正在发生变化的往往是其中很少的一部分,这是非常低效的方式。其次,rsync不能实时地去监测、同步数据,虽然它可以通过linux守护进程的方式进行触发同步,但是两次触发动作一定会有时间差,这样就导致了服务端和客户端数据可能出现不一致,无法在应用故障时完全的恢复数据,亟待解决这一问题。
技术实现思路
本专利技术提供一种同步文件的方法及装置,用以实现服务器间实时同步文件的目的。本专利技术提供一种同步文件的方法,包括:在内容服务器上安装数据镜像备份工具rsync,并建立第一认证文件以及配置有rsync的相关参数的配置文件;在发布服务器上安装rsync和监控工具inotify,并建立第二认证文件以及文件同步脚本;在所述发布服务器上运行所述文件同步脚本,以通过inotify监控所述发布服务器上包含文件的指定目录,当监控到所述指定目录中的文件发生变化时,调用rsync将所述指定目录中发生变化的文件同步至所述内容服务器。在本专利技术一实施例中,所述第一认证文件中包含有用户名和密码,并设置有指定权限。在本专利技术一实施例中,所述配置文件中设置有预设目录,以由所述发布服务器将所述指定目录中发生变化的文件同步至所述预设目录。在本专利技术一实施例中,所述方法还包括:在所述内容服务器上设置开机启动rsync。在本专利技术一实施例中,在所述内容服务器上设置开机启动rsync,包括:将rsync设置为开机启动项。在本专利技术一实施例中,所述第二认证文件包含有密码。本专利技术还提供一种同步文件的装置,包括:第一处理模块,用于在内容服务器上安装数据镜像备份工具rsync,并建立第一认证文件以及配置有rsync的相关参数的配置文件;第二处理模块,用于在发布服务器上安装rsync和监控工具inotify,并建立第二认证文件以及文件同步脚本;第三处理模块,用于在所述发布服务器上运行所述文件同步脚本,以通过inotify监控所述发布服务器上包含文件的指定目录,当监控到所述指定目录中的文件发生变化时,调用rsync将所述指定目录中发生变化的文件同步至所述内容服务器。在本专利技术一实施例中,所述第一认证文件中包含有用户名和密码,并设置有指定权限。在本专利技术一实施例中,所述配置文件中设置有预设目录,以由所述发布服务器将所述指定目录中发生变化的文件同步至所述预设目录。在本专利技术一实施例中,所述第一处理模块还用于:在所述内容服务器上设置开机启动rsync。在本专利技术一实施例中,所述第一处理模块还用于:将rsync设置为开机启动项。在本专利技术一实施例中,所述第二认证文件包含有密码。在本专利技术实施例中,在内容服务器上安装数据镜像备份工具rsync,并建立第一认证文件以及配置有rsync的相关参数的配置文件;在发布服务器上安装rsync和监控工具inotify,并建立第二认证文件以及文件同步脚本;在所述发布服务器上运行所述文件同步脚本,以通过inotify监控所述发布服务器上包含文件的指定目录,当监控到所述指定目录中的文件发生变化时,调用rsync将所述指定目录中发生变化的文件同步至所述内容服务器。由此可见,本专利技术实施例基于rsync和inotify能够实现服务器间实时同步文件的目的。本专利技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。下面通过附图和实施例,对本专利技术的技术方案做进一步的详细描述。附图说明附图用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与本专利技术的实施例一起用于解释本专利技术,并不构成对本专利技术的限制。在附图中:图1为本专利技术一实施例中同步文件的方法的流程图;图2为本专利技术另一实施例中同步文件的方法的流程图;以及图3为本专利技术一实施例中同步文件的装置的结构示意图。具体实施方式以下结合附图对本专利技术的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本专利技术,并不用于限定本专利技术。在介绍本专利技术之前,首先介绍inotify。inotify是一种强大的、细粒度的、异步的文件系统事件监控机制,linux内核从2.6.13起,加入了inotify支持,通过inotify可以监控文件系统中添加、删除、修改、移动等各种细微事件,利用这个内核接口,第三方软件就可以监控文件系统下文件的各种变化情况,而inotify-tools就是这样的一个第三方软件。如图1所示为本专利技术一实施例中同步文件的方法的流程图,该方法可以包括以下步骤S11-S13。步骤S11,在内容服务器上安装数据镜像备份工具rsync,并建立第一认证文件以及配置有rsync的相关参数的配置文件。在该步骤中,第一认证文件中可以包含有用户名和密码,并设置有指定权限。例如,第一认证文件为/etc/rsyncd/rsyncd.pass,如果该第一认证文件不能为其他任意用户访问,则可以给该第一认证文件600权限,即:#chmod600/etc/rsyncd/rsyncd.pass。此外,还可以建立配置有rsync的相关参数的配置文件,配置文件中可以设置有预设目录,以由发布服务器将指定目录中发生变化的文件同步至预设目录。这里,预设目录可以如/data/mp3,本专利技术可以根据实际需求进行设置。在本专利技术实施例中,可以将配置文件命名为rsyncd.conf,放到/etc/rsyncd/目录里。步骤S12,在发布服务器上安装rsync和监控工具inotify,并建立第二认证文件以及文件同步脚本。在该步骤中,第二认证文件中可以包含有密码。步骤S13,在发布服务器上运行文件同步脚本,以通过inotify监控发布服务器上包含文件的指定目录,当监控到指定目录中的文件发生变化时,调用rsync将指定目录中发生变化的文件同步至内容服务器。前文提及,rsync可以实现触发式的文件同步,但是通过crontab守护进程方式进行触发,同步的数据和实际数据会有差异,而inotify可以监控文件系统的各种变化,当文件有任何变动时,就触发rsync同步,这样刚好解决了同步数据的实时性问题。在本专利技术实施例中,在内容服务器上安装数据镜像备份工具rsync,并建立第一认证文件以及配置有rsync的相关参数的配置文件;在发布服务器上安装rsync和监控工具inotify,并建立第二认证文件以及文件同步脚本;在所述发布服务器上运行所述文件同步脚本,以通过inotify监控所述发布服务器上包含文件的指定目录本文档来自技高网...
一种同步文件的方法及装置

【技术保护点】
一种同步文件的方法,其特征在于,包括:在内容服务器上安装数据镜像备份工具rsync,并建立第一认证文件以及配置有rsync的相关参数的配置文件;在发布服务器上安装rsync和监控工具inotify,并建立第二认证文件以及文件同步脚本;在所述发布服务器上运行所述文件同步脚本,以通过inotify监控所述发布服务器上包含文件的指定目录,当监控到所述指定目录中的文件发生变化时,调用rsync将所述指定目录中发生变化的文件同步至所述内容服务器。

【技术特征摘要】
1.一种同步文件的方法,其特征在于,包括:在内容服务器上安装数据镜像备份工具rsync,并建立第一认证文件以及配置有rsync的相关参数的配置文件;在发布服务器上安装rsync和监控工具inotify,并建立第二认证文件以及文件同步脚本;在所述发布服务器上运行所述文件同步脚本,以通过inotify监控所述发布服务器上包含文件的指定目录,当监控到所述指定目录中的文件发生变化时,调用rsync将所述指定目录中发生变化的文件同步至所述内容服务器。2.根据权利要求1所述的方法,其特征在于,所述第一认证文件中包含有用户名和密码,并设置有指定权限。3.根据权利要求1或2所述的方法,其特征在于,所述配置文件中设置有预设目录,以由所述发布服务器将所述指定目录中发生变化的文件同步至所述预设目录。4.根据权利要求1或2所述的方法,其特征在于,还包括:在所述内容服务器上设置开机启动rsync。5.根据权利要求1或2所述的方法,其特征在于,在所述内容服务器上设置开机启动rsync,包括:将rsync设置为开机启动项。6.根据权...

【专利技术属性】
技术研发人员:张新亮
申请(专利权)人:天脉聚源北京传媒科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1