¿Cómo solucionar el problema de interrupción o tiempo de espera al cargar archivos vía ftp?
La primera carga de 4330 archivos de 39,9 millones*** tardó media hora y la transmisión falló muchas veces.
La carga de un archivo comprimido de 12,9 M por segunda vez tomó 6 segundos y no hubo fallas en la transmisión.
La tercera vez que subí un archivo comprimido de 117 M, tardó 17 segundos y no hubo ninguna falla de transmisión en el medio.
Una persona cuidadosa puede ver fácilmente que los datos cargados tienen una característica obvia en el experimento donde se interrumpió la carga: la cantidad de archivos es extremadamente grande. Solo se cargó un archivo de dos cargas exitosas.
Parece que la interrupción de la carga FTP debería estar relacionada con la cantidad de archivos a cargar.
La explicación profesional es la siguiente:
FTP es un protocolo de capa de aplicación, basado en la capa de transporte, que sirve a los usuarios. Son los responsables de transferir archivos. FTP es un protocolo cliente-servidor de 8 bits que puede operar en cualquier tipo de archivo sin procesamiento adicional, al igual que MIME o Unicode. Sin embargo, la latencia de FTP es muy alta, lo que significa que el tiempo desde que se inicia la solicitud hasta que se reciben los datos requeridos por primera vez será muy largo, lo que requerirá algunos procesos de inicio de sesión prolongados de vez en cuando.
Los servicios FTP suelen ejecutarse en los puertos 20 y 21. El puerto 20 se usa para transmitir el flujo de datos entre el cliente y el servidor, y el puerto 21 se usa para transmitir el flujo de control, que es el punto de entrada para que los comandos ingresen al servidor ftp. Mientras los datos se transfieren a través del flujo de datos, el flujo de control está inactivo. Cuando el flujo de control está inactivo durante mucho tiempo, el firewall del cliente configurará su sesión en tiempo de espera, lo que puede causar algunos problemas cuando grandes cantidades de datos pasan a través del firewall. En este punto, aunque el archivo se puede transferir correctamente, se producirán algunos errores durante la transferencia porque el firewall desconectará la sesión de control.
Hablando de manera tan profesional, muchas personas que no se especializan en informática pueden sentirse confundidas, así que expliquemos por qué FTP es muy lento y a menudo se interrumpe cuando se carga una gran cantidad de archivos.
Comparamos el servidor con una ciudad y los archivos que subimos son personas que quieren ir a la ciudad. El protocolo FTP es la regla que deben cumplir si quieren ingresar a la ciudad, y el puerto de transmisión de datos es la puerta de la ciudad, y cada archivo se considera una persona.
Cuando utilizamos un cliente FTP para cargar una gran cantidad de archivos al servidor, se puede ver como un grupo de personas conduciendo hacia la ciudad del servidor a través del portal.
Pero debido a que ingresar a la ciudad debe cumplir con ciertas reglas (protocolo FTP), es decir, primero debe ir al puerto de comando para declarar que desea ingresar a la ciudad y luego ingresar a través del puerto de datos. Sólo podrá entrar un coche a la vez. Por ejemplo, los 5 vehículos en la imagen de arriba tienen que hacer cola y esperar 5 veces para abrir y cerrar la puerta de la ciudad (puerto de datos), y lleva mucho tiempo abrir y cerrar la puerta de la ciudad cada vez. Además de eso, declarar un puerto de comando no siempre funciona. Pero se cerrará después de un cierto período de tiempo. Una vez que se cierra el puerto de comando, el puerto de datos también se cerrará. En este momento, debido a que se necesita mucho tiempo para abrir y cerrar la puerta, no todos los autos que esperan ingresar a la ciudad tienen que entrar. En este momento, es necesario volver a declarar el puerto de comando, lo que también es la razón por la que los datos cargados se interrumpen repentinamente. Debido a que el tiempo de apertura del puerto de comando ha expirado, se debe volver a declarar.
Luego comprime una gran cantidad de datos en un paquete comprimido y cárgalo. En este punto se puede ver como un grupo de personas tomando un autobús hacia la ciudad.
Debido a que solo hay un automóvil ingresando a la ciudad en este momento, este automóvil ingresó a la ciudad dentro del horario de apertura de la puerta de comando y no habrá interrupción.
En este punto, debemos comprender que si queremos resolver el problema de la interrupción de la carga FTP, entonces la mejor solución es empaquetar y comprimir los datos antes de cargarlos, para que no haya interrupciones en la carga. . Recuerde, nunca cargue demasiados archivos a la vez ni los empaquete y comprímalos.