Копирование файлов с помощью быстрой многопоточной обработки parsyncfp

Введение

В современном мире вычислений многозадачность стала неотъемлемым требованием. Чтобы эффективно использовать доступные ресурсы и повысить производительность наших приложений, мы часто прибегаем к многопоточности. В этом пошаговом руководстве мы расскажем вам о быстрой многопоточности с помощью библиотеки parsyncfp.

Что такое многопоточность?

В программировании многопоточность позволяет выполнять несколько задач одновременно. Таким образом, вы можете сделать свои приложения более быстрыми и отзывчивыми.

Давайте определим, что такое многопоточность и как она работает.

Многопоточность - это одновременная работа нескольких потоков в одной программе. Потоки работают независимо друг от друга и имеют свой контекст выполнения. Многозадачность повышает производительность и отзывчивость ваших приложений за счет параллельного выполнения множества задач.

Что такое parsyncfp?

Parsyncfp собирает файлы по размеру или количеству в chunkfiles, которые можно передавать в rsync по частям.

Parsyncfp добавляет несколько дополнительных функций к parsync, таких как возможность пропускать файлы по размеру или количеству, а также возможность приостанавливать и возобновлять передачу. Она также добавляет поддержку более сложных опций, таких как зеркалирование дерева каталогов или резервное копирование на локальный жесткий диск. Таким образом, pfp может передавать файлы до завершения полного рекурсивного спуска по исходному каталогу. При работе с очень большими деревьями каталогов эта функция может оказаться очень полезной.

Кроме того, pfp предлагает возможность возобновить передачу с того места, где она была закончена, что особенно полезно в случае сбоя системы. pfp также предлагает возможность приостанавливать и возобновлять процесс передачи, позволяя пользователю настроить процесс передачи в соответствии со своими предпочтениями.

Файлы ~/.parsyncfp

По умолчанию каталог кэша содержит каталог fpcache, в котором хранится журнал fpart, все файлы PID и файлы чанков. Поскольку чанкирование fpart происходит так быстро, parsyncfp больше не обеспечивает повторного использования кэша. Файлы журнала имеют метку даты и не перезаписываются. Помимо указания альтернативных мест расположения кэша, вы можете указать места расположения нескольких экземпляров, чтобы несколько parsyncfp могли работать одновременно. Однако при запуске они обнаружат запущенные друг другом fparts и поставят эту ситуацию под сомнение. В многохостовой версии вы будете предупреждены о rsyncs, запущенном на хостах SEND.

Копирование файлов с помощью быстрой многопоточной обработки Parsyncfp и пошаговое руководство

Шаг 1. Сохраните на источнике файлов - pfp должен быть установлен только на ИСТОЧНИКЕ.

wget <a href="https://raw.githubusercontent.com/hjmangalam/parsyncfp/master/parsyncfp">https://raw.githubusercontent.com/hjmangalam/parsyncfp/master/parsyncfp</a> 
chmod +x parsyncfp

Шаг 2. Скопируйте ключ на удаленную машину (возможно, сначала потребуется сделать ssh-keygen)

ssh-keygen
ssh-copy-id 1.1.1.1<strong>
</strong>

Шаг 3. Затем необходимо установить

apt-get install fpart

Шаг 4. Если он не входит в состав пакетов, вы можете найти его по адресу https://github.com/martymac/fp...running.

./parsyncfp --NP=10 --altcache=/dir/local/tmp --startdir='/dir/local/' www 192.168.67.1:/var/dir/

Некоторые ключевые термины

  • altcache - место, где будут храниться промежуточные файлы. Эта опция не является обязательной.
  • NP - задает количество потоков.
  • www - папка, которая будет скопирована из /dir/local/ в /var/dir/ - вы можете указать несколько папок, разделенных пробелом.

Источник: https://github.com/hjmangalam/parsyncfp