linux

Linux_295_Sersync工具介绍

2022-11-01  本文已影响0人  为宇绸缪

ftp:效率低,不支持差异化,实时同步
实时数据同步:rsync + inotify-tools
sersync:还能实现文件过滤,事件过滤配置文件简化等功能

Sersync特点

Sersync软件架构原理


截屏2022-11-01 下午8.24.10.png

上图执行原理解释

  1. Inotify监控指定目录对应事件的变化,当有事件变化时进入事件过滤队列
  2. 过滤队列负责过滤掉不需要触发复制的数据,也可以过滤短时间内产生的重复Inotify事件信息,过滤后的事件触发Rsync对应变化数据进行复制。
  3. 图中线程组(线程是等待线程队列的守护线程),当事件队列中中有事件发生后,线程组守护线程会逐个唤醒复制线程(线程就是干活的工人,没活的时候打盹,来活了逐个唤醒准备干活),当队列的Inotify事件较多的时候,复制线程就会全部唤醒一起工作,提升复制效率。(活太多,所有工人全部喊起来,加快工作效率)
  4. 除了线程组以外,还有Sersync服务线程负责处理复制失败的文件,它们再次复制,对于再次复制失败的文件(执行失败的命令),会记录到rsync_fail_log.sh脚本中,然后再定期执行脚本,同时利用自带的cron功能,实现每隔一段时间将所有未复制的数据整体复制。
上一篇下一篇

猜你喜欢

热点阅读