Copiare i file con il multithreading veloce parsyncfp

Introduzione

Nell'attuale mondo dell'informatica, il multitasking è diventato un requisito essenziale. Per utilizzare in modo efficiente le risorse disponibili e migliorare le prestazioni delle nostre applicazioni, spesso ci affidiamo al multithreading. In questa guida, passo dopo passo, vi guideremo attraverso il processo di multithreading veloce utilizzando la libreria parsyncfp.

Che cos'è il multithreading?

Nella programmazione, il multithreading consente di eseguire più operazioni contemporaneamente. In questo modo è possibile rendere le applicazioni più veloci e reattive.

Definiamo il multithreading e come funziona.

Il multithreading è l'esecuzione simultanea di più thread in un programma. I thread vengono eseguiti in modo indipendente e hanno il loro contesto di esecuzione. Il multitasking migliora le prestazioni e la reattività delle applicazioni eseguendo numerose attività in parallelo.

Che cos'è parsyncfp?

Parsyncfp raccoglie i file in base alla dimensione o al numero in chunkfile che possono essere inviati a rsync pezzo per pezzo.

Parsyncfp aggiunge alcune funzioni supplementari a parsync, come la possibilità di saltare i file in base alla dimensione o al numero, nonché la possibilità di mettere in pausa e riprendere il trasferimento. Aggiunge anche il supporto per opzioni più avanzate, come il mirroring di un albero di directory o il backup su un disco rigido locale. In questo modo, pfp può trasferire i file prima che sia stata completata la discesa ricorsiva completa della directory di origine. Quando si ha a che fare con alberi di directory molto grandi, questa funzione può essere molto utile.

Inoltre, pfp offre la possibilità di riprendere i trasferimenti dal punto in cui sono stati interrotti, il che è particolarmente utile in caso di crash del sistema. pfp offre anche la possibilità di mettere in pausa e riprendere il processo di trasferimento, consentendo all'utente di personalizzare il processo di trasferimento in base alle proprie preferenze.

I file ~/.parsyncfp

Per impostazione predefinita, la directory cache contiene la directory fpcache, che contiene il log di fpart, tutti i file PID e i file chunk. Poiché il chunking di fpart è così veloce, parsyncfp non prevede più il riutilizzo della cache. I file di registro sono datati e non vengono sovrascritti. Oltre a specificare posizioni alternative per la cache, è possibile specificare posizioni per più istanze, in modo che più parsyncfp possano essere eseguiti contemporaneamente. Tuttavia, essi rileveranno i rispettivi fpart in esecuzione all'avvio e metteranno in dubbio questa situazione. Nella versione multi-host si viene avvisati dei rsync in esecuzione sugli host SEND.

Copia di file con Parsyncfp a multithreading veloce e guida passo per passo

Fase 1. Salvataggio sulla sorgente dei file - pfp deve essere installato solo sulla FONTE

wget https://raw.githubusercont ent.com/hjmangalam/parsyncfp/master/parsyncfp
chmod +x parsyncfp

Passo 2. Copiare la chiave sulla macchina remota (potrebbe essere necessario fare prima un ssh-keygen)

ssh-keygen
ssh-copy-id 1.1.1.1

Passo 3. Quindi si deve installare

apt-get install fpart

Passo 4. Se non è incluso nei pacchetti, è possibile trovarlo all'indirizzo https://github.com/martymac/fp...running.

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

Alcuni termini chiave

  • altcache - dove verranno memorizzati i file intermedi. Questa opzione non è necessaria.
  • NP - specifica il numero di thread.
  • www - è la cartella che verrà copiata da /dir/local/ a /var/dir/ - è possibile specificare più cartelle separate da uno spazio.

Fonte: https://github.com/hjmangalam/parsyncfp