【技术实现步骤摘要】
一种基于rsync进行实时数据同步的方法及系统
本申请涉及服务器数据传输
,特别是涉及一种基于rsync进行实时数据同步的方法及系统。
技术介绍
在服务器数据传输领域,经常需要在多台主机中同步传输文件,rsync是运维工作中常用的远程数据同步工具。目前,常用的基于rsync进行数据同步的方法,通常是采用rsync+inotify相结合的触发式数据同步。具体地,利用inotify机制,即监控文件系统操作机制实现实时数据监控,当inotify监测到文件系统有变动时,会第一时间触发rsync进行数据同步操作。然而,目前基于rsync进行数据同步的方法中,由于inotify机制的监控结果会实时触发rsync,使得rsync频繁操作,占用大量系统资源,影响带宽和服务器的整体性能。
技术实现思路
本申请提供了一种基于rsync进行实时数据同步的方法及系统,以解决现有技术中的数据同步占用大量系统资源,影响带宽和服务器性能的问题。为了解决上述技术问题,本申请实施例公开了如下技术方案:一种基于rsync进行实时数据同步的方法,所述方法包括:对文件系统进行实时监控,获取监控数据,所述文件系统设置于主服务器中,所述监控数据包括:文件系统的大小、文件属性以及事件文件,所述事件文件用于记录文件系统发生的事件,所述事件包括:修改事件、新增事件、删除事件以及移动事件;根据所获取的命令,设置文件系统的数据同步频率;根据所述数据同步频率,判断当前文件系统的大小是否小于或 ...
【技术保护点】
1.一种基于rsync进行实时数据同步的方法,其特征在于,所述方法包括:/n对文件系统进行实时监控,获取监控数据,所述文件系统设置于主服务器中,所述监控数据包括:文件系统的大小、文件属性以及事件文件,所述事件文件用于记录文件系统发生的事件,所述事件包括:修改事件、新增事件、删除事件以及移动事件;/n根据所获取的命令,设置文件系统的数据同步频率;/n根据所述数据同步频率,判断当前文件系统的大小是否小于或等于设定的文件系统阈值;/n如果是,采用全量同步的方式,利用rsync将当前文件系统实时同步至各web服务器中;/n如果否,采用增量同步的方式,利用rsync将当前文件系统实时同步至各web服务器中。/n
【技术特征摘要】
1.一种基于rsync进行实时数据同步的方法,其特征在于,所述方法包括:
对文件系统进行实时监控,获取监控数据,所述文件系统设置于主服务器中,所述监控数据包括:文件系统的大小、文件属性以及事件文件,所述事件文件用于记录文件系统发生的事件,所述事件包括:修改事件、新增事件、删除事件以及移动事件;
根据所获取的命令,设置文件系统的数据同步频率;
根据所述数据同步频率,判断当前文件系统的大小是否小于或等于设定的文件系统阈值;
如果是,采用全量同步的方式,利用rsync将当前文件系统实时同步至各web服务器中;
如果否,采用增量同步的方式,利用rsync将当前文件系统实时同步至各web服务器中。
2.根据权利要求1所述的一种基于rsync进行实时数据同步的方法,其特征在于,所述采用全量同步的方式,利用rsync将当前文件系统实时同步至各web服务器中,包括:
读取所述监控数据中的事件文件;
如果事件文件中的事件为删除事件或者移动事件,记录删除日志;
根据所述删除日志,删除web服务器中对应的文件;
如果事件文件中的事件为新增事件或者修改事件,排除设定的目录及文件;
对排除设定的目录及文件之后的文件系统执行全量目录同步操作。
3.根据权利要求1所述的一种基于rsync进行实时数据同步的方法,其特征在于,所述采用增量同步的方式,利用rsync将当前文件系统实时同步至各web服务器中,包括:
读取所述监控数据中的事件文件;
如果事件文件中的事件为删除事件或者移动事件,记录删除日志;
根据所述删除日志,删除web服务器中对应的文件;
如果事件文件中的事件为新增事件或者修改事件,根据事件文件筛选并排除重复文件,生成执行文件;
利用rsync将执行文件所对应的文件系统内容增量同步至各Web服务器中。
4.根据权利要求1所述的一种基于rsync进行实时数据同步的方法,其特征在于,所述文件系统包括:普通量级文件系统和大量级文件系统。
5.根据权利要求2中所述的一种基于rsync进行实时数据同步的方法,其特征在于,对排除设定的目录及文件之后的文件系统执行全量目录同步操作之后,所述方法还包括:
删除当前文件系统监控数据中的事件文件。
6.根据权利要求3所述的一种基于rsync进行实时数据同步的方法,其特征在于,利用rsync将执行文件所对应的文件系统内容增量同步至各Web服务器中之后...
【专利技术属性】
技术研发人员:亓颖,
申请(专利权)人:苏州浪潮智能科技有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。