Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

139
Views
Cómo acelerar un punto final que pasa una cantidad significativa de datos a db

Básicamente, tengo una aplicación web React que estoy creando para cargar un gran conjunto de datos en una base de datos. A partir de ahora, estoy usando un archivo de prueba que solo tiene alrededor de 3000 líneas y el tiempo total para cargar todos los datos del archivo es de alrededor de 4 minutos. Necesito acelerar esto significativamente, pero no estoy totalmente seguro de cómo. Como referencia, el tamaño real de los archivos que planeo cargar será de alrededor de 100 000 líneas. También otro problema que estoy bastante seguro de que puedo solucionar con un poco de retoques es que empiezo a quedarme sin recursos netos alrededor de 80k de solicitud, por lo que si hay alguna sugerencia para modificar mi función delayQue para evitar eso, también sería apreciada.

Tamaño del archivo de prueba: 76kb

Tamaño real del archivo: 5mb

punto final

 const stepData = async() =>{ const body = {a,b,c,d,e,f} assignToBody(body) try{ const response = await fetch('http://localhost:5000/stepdata',{ method:"POST", headers: {"Content-Type": "application/json"}, body: JSON.stringify(body) })}catch(err){ console.log(err.message) } }

Acelerador (nota: asignarVals solo asigna los valores al cuerpo en mi punto final)

 const delayQue = () =>{ assignVals(row) row++ if(row % 500 == 0){ setTimeout(delayQue,2000) }else{ setTimeout(delayQue,100) } }

también otra cosa en caso de que sea importante que cada línea contenga entre 6 y 20 puntos de datos. Reduje mi número de llamadas asignando los valores a un objeto y pasando el objeto. Cualquier ayuda para acelerar esto será muy apreciada.

Editar: Para aclarar el problema, simplemente tengo que hacer una solicitud de 100k o más y estoy tratando de encontrar una manera de acelerar mi solicitud o al menos administrarla mejor en lugar de usar el tiempo de espera y las pruebas y capturas integradas.

Actualización: estoy bastante seguro de que el problema es una fuga de recursos en mi terminal

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

En cuanto a la cantidad de datos transferidos a través de la red:

El tamaño del archivo se puede reducir de manera muy eficiente utilizando un algoritmo de compresión como gzip o brotli. Dependiendo del servidor web que esté utilizando, primero deberá activar la compresión para que se pueda utilizar.

Aquí un ejemplo de cómo usar con express: https://expressjs.com/en/resources/middleware/compression.html

Dependiendo de los datos que desee transferir, puede reducir significativamente el tamaño del archivo. Los archivos de texto repetitivos se comprimen mejor. Los archivos ya comprimidos, como las imágenes jpeg, no se comprimen en absoluto.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!