Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

529
Vistas
¿Cuál es la mejor manera de notificar a los usuarios que el documento expiró en la base de datos?

En mi aplicación, los usuarios crean documentos que luego se guardan en la base de datos. El documento tiene un campo expireAt que se establece en 30 días antes de la fecha de creación. Después de la fecha de vencimiento, el documento se considera inactivo.

Entonces, lo que quiero es enviar un correo electrónico al usuario después de la fecha de vencimiento para notificarle que su documento ahora está inactivo. La única solución que veo es crear un trabajo cron y sondear periódicamente la base de datos en busca de documentos caducados.

Pero no estoy seguro de si el sondeo periódico es un buen enfoque y me gustaría saber si hay otras formas de hacerlo.

PD La aplicación está construida con nodejs + mongoDB

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Tykaty, puedes intentar usar 2 características de mongodb:

  • Caducar datos https://docs.mongodb.com/manual/tutorial/expire-data/
  • Cambiar eventos https://docs.mongodb.com/manual/reference/change-events/ https://docs.mongodb.com/manual/changeStreams/#watch-a-collection--database--or-deployment

La idea es sencilla. Almacene los documentos como antes. Agregue una colección que verá y agregue allí los objetos que deben caducar, vincule cada documento en su colección original a un objeto correspondiente que caducará (enlace 1 a 1). Cuando el motor mongo elimina el objeto (caducado), recibe una notificación con su _id. Encuentre este _id en su colección original de documentos para comprender qué documento caducó. Aquí estás.

Por supuesto, puede comenzar con el sondeo, la solución final depende de los datos y su uso, así como de la carga.

over 4 years ago · Santiago Trujillo Denunciar

0

Si su caso de uso es simplemente eliminar el documento caducado, puede usar la función TTL de mongodb.

Como necesita enviar un correo electrónico, la mejor opción es el trabajo cron como ya pensó. Sí, el sondeo periódico es una buena opción y funciona en la mayoría de los casos de uso y usted tiene control sobre él.

Según sus requisitos, puede sondear una vez al día. Si aún necesita preocuparse hasta el minuto de vencimiento, puede hacerlo restando 24 horas de su consulta real y enviar una alerta para la comodidad del usuario.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda