美文网首页linux
Linux_295_Sersync工具介绍

Linux_295_Sersync工具介绍

作者: 为宇绸缪 | 来源:发表于2022-11-01 20:24 被阅读0次

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

Sersync特点

  • 使用C++编写,支持对监控事件的过滤
  • Sersync采用xml配置文件,由守护进程启动,配置起来比起简易的inotify+rsync更简单
  • 使用多线程复制,可以并发复制多个不同文件,效率更高
  • Sersync自带异常检测机制,可以通过失败队列对出错的文件重新复制
  • 自带crontab功能,实现对失败队列中的文件定时整体复制
  • 自带socket和HTTP协议扩展,定制特殊需求,二次开发

Sersync软件架构原理


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

上图执行原理解释

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

相关文章

  • Linux_295_Sersync工具介绍

    ftp:效率低,不支持差异化,实时同步实时数据同步:rsync + inotify-toolssersync:还能...

  • 工具介绍

    当css和html.......等文件更新时 网页会自动刷新

  • 人像后期-去瑕疵

    -本文大纲- ①简单介绍去瑕疵 ②污点修复画笔工具 ③修复画笔工具 ④修补工具 ⑤仿制图章工具 ⑥总结 -简单介绍...

  • 水彩工具介绍

    一、水彩工具介绍 透明水彩需要依赖媒介来体现效果,其中最重要的是纸张。纸张对颜色的附着力、耐磨能力对一幅画至关重要...

  • ora工具介绍

    相信大家工作中会遇到很多要写SQL进行维护的情况,比如查询表空间使用率情况: 需要dba_free_space与d...

  • 手绘工具介绍

    相对于文字来说,用图片来表达信息更容易让人记住,也更容易记忆,因为我们大脑记图片的速度比记文字的速度快。我们的大脑...

  • sysbench工具介绍

    https://github.com/akopytov/sysbenchsysbench 资料 sysbench ...

  • valgrind工具介绍

    一、简介 Valgrind是一个二进制插桩框架,可以用来制作二进制分析工具。利用Valgrind可以检测二进制程序...

  • SqlDbx工具介绍

    SqlDbx 是简单易用的数据库连接工具,是一种电脑软件。 SqlDbx 是简单易用的数据库连接工具,SQL编辑,...

  • fiddler工具介绍

    众所周知,fiddler是一个抓包工具,那么fiddler究竟是怎么工作的,它的工作原理是什么?以及fiddler...

网友评论

    本文标题:Linux_295_Sersync工具介绍

    本文链接:https://www.haomeiwen.com/subject/gnkdtdtx.html