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

155
Views
¿Debo eliminar la palabra clave "aguardar" para aumentar el tiempo de respuesta?

Tengo base de datos de usuarios donde han creado su equipo. y otro documento para almacenar corredores.

cada usuario puede crear un equipo de 6 corredores.

pero el problema es que tengo 50k usuarios y uso el siguiente código para eliminar a un corredor de su equipo si el administrador lo eliminó del documento Racers.

estoy usando express.js y mangosta

El equipo es una matriz de objetos que tiene el nombre de los corredores, su código abreviado y un identificador único.

 async function delete(req, body){ // code to validate users input await Users.updateMany({'tema.shortCode': 'HAM'}, { $pull: {'team.shortCode': 'HAM'}}) }

He visto que el tiempo de respuesta disminuye si elimino la palabra clave await. Pero es recomendable hacer eso.

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

0

No, no deberías eliminar el await . Quitar la await significa que si la llamada Users.updateMany se rechaza, el error no podrá manejarse fácilmente, ya que se convertiría en un rechazo de promesa no manejado.

 const fail = async message => Promise.reject(message) const usingAwait = async () => { await fail('using await') } const noAwait = async () => { fail('no await') } const handleError = error => console.log('Handled error:', error) ;(async () => { await usingAwait().catch(handleError) // logs Handled error: using await await noAwait().catch(handleError) // doesn't log anything! })()

La regla typescript-eslint @typescript-eslint/no-floating-promises tiene más detalles sobre esto:

Las promesas no manejadas pueden causar varios problemas, como operaciones secuenciadas incorrectamente, rechazos de promesas ignoradas y más. Las formas válidas de manejar una declaración con valor de promesa incluyen await , regresar y llamar a .then() con dos argumentos o .catch() con un argumento.

La forma de acelerar las cosas sería usar algo como Promise.all si está haciendo varias delete que no dependen del resultado de cada una:

 const reqs = [[req1, body1], /* ... */] await Promise.all(reqs.map(async ([req, body]) => delete(req, body))
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!