FileMonitor filechanges объединяет сигналы (объединяет их) - PullRequest
2 голосов
/ 14 июля 2011

давний посетитель, мой первый вопрос.

Я больше ищу идеи для своей проблемы, чем конкретный вопрос по Java.

У меня есть файл и / или каталог, который мне нужно передать (rsync) одному или нескольким удаленным хостам.

Я использую Apache FileAlterationMonitor опрос каждые 5 секунд.

Когда в каталоге изменяется много файлов, я бы хотел запустить rsync, но только когда я знаю, что все файлы готовы.Поскольку FileMon опрашивает каждые 5 секунд, я получаю несколько запросов, когда мой входной каталог изменяется более 5 минут.

Вы бы подумали, что я бы просто увеличил опрос, который все равно оставляет мне 2 сигнала, если мои триггеры оказываются в середине изменения.

Как я могу объединить эти сигналы, чтобы обработать каталог один раз.

(если любопытно узнать о процессе и почему он должен произойти только один раз, потому что я делаю глубокую контрольную сумму md5 каталога и также выполняю rsyncing этого файла. Если во время передачи моя md5checksum будетнеправильно.)

Надеюсь, я хорошо прояснил свою проблему, я открыт для других идей сделать это.Есть ли другой файловый монитор, который может объединить несколько изменений, скажем, за последние пять минут в одно?

Спасибо,

Дан

...