Mi caso de uso consiste en cargar miles de archivos de fotos y videos de calidad total usando el navegador a cuentas de almacenamiento S3 y Wasabi. Actualmente lo estamos comprimiendo en el navegador del cliente y ahora lo hicimos usando dropzonejs que maneja la carga. En este momento está comprimido antes de ser subido al servidor.
Sin embargo, eso es lo que tenemos que cambiar. Necesitamos cargar fotos de calidad original y ahí es donde se atasca, ya que no podemos cargar archivos de más de 3-4 Gbs usando Dropzonejs. No estoy seguro de qué lo impide, pero estamos luchando para encontrar una solución para esto. Enfrentamos un problema al azar con el límite de memoria en Chrome que falla y necesitamos reiniciar el proceso nuevamente. Con la foto de calidad original, asumimos que esto no funcionaría, ya que estaremos hablando de al menos 10 a 15 gb de datos como mínimo.
¿Qué recomendaría para este tipo de caso de uso en el que necesitamos cargar videos y fotos en calidad original? A veces, una sola foto podría ocupar hasta 40 Mbs o más. Y video varios Gbs.
¿Cómo gestiona Google Fotos esto? Necesitamos algo así.
Troceando...
alguien ya tiene una demostración https://github.com/dropzone/dropzone/blob/main/test/test-sites/2-integrations/aws-s3-multipart.html
pero creo que 4 GB es el tamaño máximo de archivo que aceptará Chrome (y creo que Chrome tiene el límite más alto en comparación con otros navegadores). lo que significa que debe usar otro método para cargar, como ftp, stream, scp, etc., o pedir a sus clientes que corten los archivos ellos mismos antes de cargarlos a través de su navegador.
O cree un ejecutable personalizado que se combine con el cliente S3 y deje que sus clientes lo usen
dropzonejs admite fragmentación y paralelismo , ¿los usó? ¿comprimes archivos por dropzone así: https://stackoverflow.com/a/51699311/18399373
No comprima en el lado del cliente. De hecho, aumenta el uso de la memoria en la sesión del navegador. Según mi experiencia, cargar la imagen original desde el navegador usa la menor cantidad de memoria, ya que el navegador solo debe leer lo suficiente del archivo para enviar los datos, siempre que no esté cargando la imagen localmente para mostrar las miniaturas.
Pude cargar GB de imágenes en S3 con la compresión del lado del cliente desactivada. Pude cargar un solo archivo de video de 20 GB en S3, cargar 200 videos con un total de más de 13 GB usando la carga S3 Chunk. La carga de fragmentos debe aumentar, no disminuir el uso de la memoria del navegador y se implementó para fallas en la transmisión manual de archivos grandes.