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

135
Views
Ejecutar miles de funciones setInterval en NodeJS simultáneamente

esta es más una pregunta sin código, ya que no creo que sea tan importante con respecto a mi pregunta.

En resumen, estoy creando una aplicación donde los usuarios crean un perfil. Cada usuario tiene una cantidad de créditos que puede utilizar para promocionar su perfil.

¿Cómo funciona la promoción?

Cada usuario tiene un campo "última actualización" en la base de datos, después de lo cual se ordenan en la página de inicio. Cuando un usuario activa la promoción a través de una llamada API, ejecuto un setInterval de X milisegundos (proporcionado por el usuario).

Cada X milisegundos, el campo "última actualización" del usuario recibe una marca de tiempo y se restan X créditos de su cuenta. Una vez que el usuario se queda sin créditos, setInterval se detiene.

Mi(s) pregunta(s) actual(es)

¿Cómo es esto en cuanto al rendimiento, considerando el hecho de que podría haber miles de esas llamadas, lo que resultaría en miles de funciones setInterval ejecutándose al mismo tiempo?

¿Hay alguna otra manera de abordar esto?

¡Gracias!

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

0

Sería mejor calcular todo a pedido cuando sea necesario. Suponiendo que la cantidad de créditos utilizados depende de cuánto tiempo se ha estado mostrando la promoción, puede almacenar la hora de inicio en la base de datos y luego usar la hora actual para calcular cuántos créditos quedan en función del tiempo transcurrido. Esto daría como resultado muchas menos operaciones en comparación con ejecutar una función cada pocos milisegundos.

about 4 years ago · Juan Pablo Isaza Report

0

Si realmente tiene que hacer esto con un intervalo, sería mejor ejecutar uno cada 5 segundos más o menos (número aleatorio). Dado que esto está interactuando con la base de datos, eso puede ser demasiada carga.

Simplemente hacer las cosas a pedido cuando entra la API de un usuario debería ser la opción más limpia.

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!