У меня есть сервер, на котором хранятся тысячи файлов журнала, вложенных в тысячи каталогов. На данный момент я использую RSYNC для копирования этих файлов журналов на веб-сервер, где я их анализирую и делаю доступными через веб-приложение.
Моя проблема в том, что, учитывая огромный объем файлов и каталогов, RSYNC занимает очень много времени. Мне нужно получать последние файлы несколько раз в час, но это не очень эффективно.
Мой вопрос, по сути, есть лучший способ? Может быть, какой-то способ указать исходному серверу отправить любой файл журнала, который был изменен, вместо использования RSYNC для сканирования всей структуры папок?
Мой единственный приоритет - как можно быстрее передавать файлы журнала, которые изменились, на веб-сервер, несколько раз в час. Но RSYNC оказывается не очень полезным, учитывая время, которое на это требуется.
Спасибо!
Вы можете поместить свой журнал в раздел LVM и перенести моментальный снимок. В вашем случае передача уровня блока должна быть быстрее из-за отсутствия накладных расходов на сканирование.
Для перевода можно использовать
rsync --inplace
или
xdelta