inotify,inotify-tools


安装inotify

安装inotify-tools-3.14.tar.gz

解压:

编译安装:

 

inotifywait:在被监控的文件或目录上等待特定文件系统事件(open、close、delete等)发生,执行后处于阻塞转态,适合在shell脚本中使用。

inotifywatch:收集被监控的文件系统使用度统计数据,指文件系统事件发生的次数统计。

inotifywait命令常用参数

测试一:

窗口一:

窗口二:

测试二:

窗口一:

窗口二:

同时监控多个事件,事件之间用逗号分隔。

测试:

窗口一:

窗口二:

备份服务器:

 

写入rc.local

应用场景:10—300k小文件并发200—300,不会有延迟。

关键参数说明:

在/proc/sys/fs/inotify目录下有三个文件,对inotify机制有一定的限制。

max_user_watches:设置inotifywait或inotifywatch命令可以监视的文件数量(单进程)。

max_user_instances:设置每个用户可以运行的inotifywait或inotifywatch命令的进程数。

max_queued_events:设置inotify实例事件(event)队列可容纳的事件数量。

每秒200个文件并发,数据同步几乎无延迟。

inotify优点:

实时数据同步。

inotify缺点:

1、并发如果大于200个文件(10—100K),同步会有延迟。

2、监控到事件后,调用rsync同步是单进程的(加&并发),sersync多进程同步。

sersync的功能:

1、配置文件。

2、真正的守护进程socker。

3、可以对失败文件定时重传(定时任务)。

4、第三方的http接口。

5、默认多线程同步。

高并发数据实时同步方案:

1、文件级别:inotify(sersync)+rsync。

2、文件系统级别:drbd。

3、第三方软件的同步功能:mysql同步、oracle、mongodb。

4、程序双写。

5、业务逻辑解决。

相关内容

    暂无相关文章