inotify实时同步工具理论和实战

简介:

inotify服务:

当用户在A服务器上操作了数据,inotify会抓取出来,然后通知rsync,然后同步到rsync服务器。所以inotify服务器却是rsync的客户端服务器。

inotify性能比sersync强,inotify可能支持几百个图片,sersync可能一百所以就差不多了。

确认内核是否支持inotify 可通过ll /proc/sys/fs/inotify查看有三个文件即可。

rz上传inotify软件包

tar xf inotify-tools-3.123.tar.gz

cd inotify-tools-3.13

./configure --prefix=/usr/local/inotify-tools-3.13

make&&make install

cd ../

ln -s /usr/local/inotify-tools-3.13 /usr/local/inotify


/usr/local/inotify下有如下文件:

bin  执行文件  类似windows的exe文件

include 程序所需要的头文件

lib 动态链接的库文件

share 帮助文档


/usr/local/inotify-tools-3.13/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' -e create /backup 监听创建文件create

创建脚本:

#!/bin/sh

cmd="/usr/local/inotify/bin/inotifywait"

$cmd -mrq --format '%w%f' -e create,close_write,delete /backup|\

while read line

do

  [ ! -e “$line” ] && continue

  rsync -az --delete $line rsync_backup@192.168.44.40::oldboy --password-file=/etc/rsync.password

done


生产环境中需调整一下参数:

max_user_watches  max_queued_events  max_user_instances都调大些。

并发不是很大,10-100k文件 最多200个。

本文转自  流颗星  51CTO博客,原文链接:http://blog.51cto.com/liukexing/1965235

相关文章
|
4月前
|
监控 Linux 测试技术
【实战技巧】使用inotify实现实时文件监控
`inotify`是Linux内核提供的文件系统监控机制,用于实时捕获文件和目录的创建、删除、移动和修改等事件。通过`inotify_init`初始化,`inotify_add_watch`添加监视点,如`. IN_ACCESS`, `. IN_MODIFY`等,及`inotify_rm_watch`移除监视。示例代码展示了监听指定路径下文件修改事件,当事件发生时打印信息。使用`inotify`能高效地构建实时应用,如文件同步和日志监控,简化系统编程。
892 11
|
4月前
|
存储 搜索推荐 数据库
面试题MySQL问题之个性化推荐广告系统中ETL技术与Aerospike的结合使用如何解决
面试题MySQL问题之个性化推荐广告系统中ETL技术与Aerospike的结合使用如何解决
47 2
|
6月前
|
存储 固态存储 关系型数据库
【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(系统底层优化篇)(一)
【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(系统底层优化篇)
77 1
|
6月前
|
缓存 网络协议 关系型数据库
【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(系统底层优化篇)(二)
【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(系统底层优化篇)
70 0
|
大数据 Linux 网络安全
|
消息中间件 SQL Oracle
技术干货|如何利用 ChunJun 实现数据实时同步?
ChunJun技术分享干货来了!实时同步是 ChunJun 的⼀个重要特性,本文将为大家介绍如何使用 ChunJun 实时同步,以及 ChunJun ⽀持的 RDB 实时采集插件的特性、采集逻辑及其原理,帮助大家更好地理解 ChunJun 与实时同步,欢迎点进正文阅读。
462 0
|
存储 运维 监控
用这个小工具解决了Linux下文件实时和增量同步两大问题
用这个小工具解决了Linux下文件实时和增量同步两大问题
用这个小工具解决了Linux下文件实时和增量同步两大问题
|
数据库 数据格式 JSON
带你读《R数据科学实战:工具详解与案例分析》之一:数据导入工具
本书共11章,前6章主要介绍和讨论使用R语言的一般流程以及常用的R包;第7~11章,包含了5个实战案例,通过与前6章的内容相结合,展示如何使用这些R包。复现书中的代码需要读者对.Rproj有一定的了解,建议读者参阅网络教程学会使用.Rproj。使用.Rproj的原因在于其可以将每一次数据分析或练习都视为一个独立的项目(不必调用setwd函数重置工作路径),这样做不但可以减少代码出错的几率,而且还能更利于进行数据管理。
|
监控 JavaScript 测试技术
rsync+inotify实现实时同步(小业务场景解决方案)
一、rsync功能介绍 rsync同步操作• 命令用法– rsync [选项...] 源目录 目标目录 • 同步与复制的差异– 复制:完全拷贝源到目标– 同步:增量拷贝,只传输变化过的数据 • 本地同步– rsync [选项.
1508 0