Accesso FTP simultaneo


8

In che modo i server FTP gestiscono l'accesso simultaneo allo stesso file, ovvero se un utente sta aggiornando un file mentre un altro sta leggendo lo stesso file? Dovrei essere preoccupato per ottenere dati corrotti? Dipende dal server FTP o anche dal sistema operativo?

Risposte:


2

Penso che lo stesso server FTP non lo gestisca.
Il file system sottostante gestirà gli accessi coinvolti qui.

Se una lettura inizia prima di una scrittura, in genere la lettura otterrebbe la versione precedente.

Dovresti ottenere la risposta a questa domanda in base
alla gestione del file system del server per un file che viene sovrascritto.


1

Penso che le implementazioni FTP non si occupino di questo e il sistema operativo varierà su come funziona, Windows potrebbe bloccare il file, Linux ti fornirà dati parziali.

Sì, dovresti essere preoccupato, specialmente in caso di utilizzo intenso. Le soluzioni che ho trovato in passato erano nella migliore delle ipotesi, tra cui diverse cartelle per upload / download e un processo di monitoraggio da copiare da upload a download quando il file è completamente caricato.

Ciò peggiora poiché i file sono più lunghi e / o le persone caricano da connessioni lente.


0

Sono abbastanza sicuro che potresti avere problemi. Prova questo:

Avvia un caricamento di un file di grandi dimensioni sul tuo server FTP. Aggiorna la vista della cartella in cui viene caricato e vedrai che la dimensione del file aumenta e il caricamento procede.

Se provi questo con un file .mp3. Puoi accedervi tramite il browser e vedere che giocherà solo fino al punto che è stato attualmente caricato.

Ecco perché programmi come Dreamweaver hanno un sistema di check in / check out. In modo che se qualcuno sta lavorando su un file .html qualcun altro non può caricare una versione precedente o causare quel tipo di problemi.

Non credo che FTP usi alcun tipo di file temporaneo o di accodamento ...


Corretta. Una volta ho decompresso un file che in realtà non è stato trasferito fino in fondo. Strani messaggi di errore, ovviamente ...
Arjan,

Penso che l'aggiornamento e il file esistente siano diversi dalla creazione di un nuovo file (la lettura non inizierà prima della creazione, quindi seguirà la scrittura). Se la lettura corre oltre la scrittura, si ottengono letture terminate in modo incompleto. Un file ZIP incompleto mostrerà la corruzione. Un mp3 incompleto verrà riprodotto fino al primo punto di corruzione (credo). Questa è una differenza nei formati di file.
nik,

Una modifica / sovrascrittura di un file esistente dovrebbe identificare una lettura in corso e creare una nuova versione da scrivere, mantenendo quella precedente per il completamento della lettura. Questo è il motivo per cui dico nella mia risposta che un tipico filesystem darebbe una copia più vecchia del file in tal caso.
nik,

0

Ogni volta che tento di accedere a una pagina che non ho ancora caricato, ricevo un "ripristino della connessione durante il caricamento". Penso che dipenda davvero dal software.


-1

L'uso di un software di controllo delle revisioni sarebbe utile in questo caso, dare un'occhiata a Git e SVN , notare che ci sono due tipi principali (centralizzati e distribuiti) e molte altre applicazioni oltre a questi due.


Questa risposta non ha assolutamente nulla a che fare con la domanda ...
Kristian,

Le operazioni in quei sistemi sono atomiche e non è possibile ottenere un file incompleto, problema risolto.
Shadok,

Sì, lo so, ma la domanda riguardava in particolare i server FTP
Kristian,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.