Acceso concurrente a FTP


8

¿Cómo manejan los servidores FTP el acceso concurrente al mismo archivo, es decir, si un usuario está actualizando un archivo mientras otro está leyendo el mismo archivo? ¿Debería preocuparme por obtener datos corruptos? ¿Depende del servidor FTP o incluso del sistema operativo?

Respuestas:


2

Creo que el servidor FTP en sí no maneja esto.
El sistema de archivos subyacente administrará los accesos involucrados aquí.

Si una lectura comienza antes de una escritura, la lectura normalmente obtendría la versión anterior.

Debería obtener la respuesta a esta pregunta basándose en
el manejo del sistema de archivos del servidor para un archivo que se sobrescribe.


1

Creo que las implementaciones de FTP simplemente no se ocupan de esto, y el sistema operativo variará en función de cómo lo hace, Windows podría bloquear el archivo, Linux le dará datos parciales.

Sí, debería estar preocupado, especialmente con un alto uso. Las soluciones que encontré en el pasado eran incompletas en el mejor de los casos, incluidas diferentes carpetas para cargar / descargar y un proceso de monitor para copiar de carga a descarga cuando el archivo está completamente cargado.

Esto empeora a medida que los archivos son más largos y / o las personas cargan desde conexiones lentas.


0

Estoy bastante seguro de que podrías tener problemas. Prueba esto:

Inicie la carga de un archivo grande en su servidor FTP. Actualice la vista de la carpeta en la que se está cargando y verá que el tamaño del archivo aumenta y la carga progresa.

Si intenta esto con un archivo .mp3. Puede acceder a él a través del navegador y ver que solo se reproducirá hasta el punto que se ha cargado actualmente.

Es por eso que programas como Dreamweaver tienen un sistema de entrada / salida. De modo que si alguien está trabajando en un archivo .html, otra persona no puede cargar una versión anterior o causar ese tipo de problemas.

No creo que FTP use ningún tipo de archivos temporales o colas tampoco ...


Correcto. Una vez descomprimí un archivo que en realidad no se transfirió por completo. Mensajes de error extraños, por supuesto ...
Arjan

Creo que la actualización y el archivo existente es diferente de crear un nuevo archivo (la lectura no comenzará antes de que ocurra la creación, y luego seguirá la escritura). Si la lectura va más allá de la escritura, obtienes lecturas incompletas. Un archivo ZIP incompleto mostrará daños. Un mp3 incompleto se reproducirá hasta el primer punto de corrupción (creo). Esa es una diferencia en los formatos de archivo.
nik

Una modificación / sobrescritura de un archivo existente debe identificar una lectura en progreso y crear una nueva versión para escribir, conservando la versión anterior para que se complete la lectura. Es por eso que digo en mi respuesta que un sistema de archivos típico daría una copia anterior del archivo en tal caso.
nik

0

Cada vez que intento acceder a una página que aún no he subido, obtengo un "restablecimiento de la conexión al cargar". Sin embargo, creo que realmente depende del software.


-1

El uso de un software de control de revisión ayudaría en este caso, eche un vistazo a Git y SVN , tenga en cuenta que hay dos tipos principales (centralizados y distribuidos) y muchas otras aplicaciones además de esos dos.


Esta respuesta no tiene nada que ver con la pregunta ...
Kristian

Si las operaciones en esos sistemas son atómicas, no hay forma de obtener un archivo incompleto, un problema resuelto.
Shadok

Sí, lo sé, pero la pregunta era específicamente acerca de los servidores FTP
Kristian el
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.