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

336
Vistas
¿Cómo ejecutar actualizaciones/consultas de Mongoose/MongoDB en el backend de node.js sin iniciar el servidor? (Programador Heroku)

Tengo una aplicación alojada en Heroku ( https://trendedge.app ) (el front-end y el back-end son aplicaciones separadas) y estoy trabajando para implementar Heroku Scheduler para tareas básicas como enviar correos electrónicos y ejecutar actualizaciones en mi Base de datos MongoDB Atlas (presione una API, actualice MongoDB con Mongoose).

Para las actualizaciones de MongoDB, actualmente accedo a una ruta de administración en el front-end y las actualizaciones comienzan a ejecutarse en el back-end. Fácil PZ.

Sin embargo, para configurar el programador de Heroku, solicita un comando node.js (visto aquí)... Instrucciones del programador de Heroku

... y esto tiene sentido, pero si mi conexión con el atlas de MongoDB se realiza al iniciar el servidor ('npm start', es decir, 'node index.js'), entonces, ¿cómo ejecuto un comando de nodo para actualizar MongoDB? cuando el servidor aún no se ha iniciado?

Por ejemplo, si ejecuto "node updateDB.js", se producirá un error porque no hay ningún servidor en ejecución y aún no se ha establecido la conexión con Mongo.

Cualquier idea sobre cómo puedo configurar/probar estas funciones de nodo programadas (¿sin iniciar el servidor?) Sería muy apreciada.

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Puede requerir solo los inicios necesarios de index.js en schedule.js. En este caso, solo las startups de validación y mongodb

about 4 years ago · Juan Pablo Isaza Denunciar

0

para ejecutar un solo archivo y conectarse con la base de datos para realizar alguna tarea. puedes probar de esta manera.

 mongodb = require('mongodb'); config = module.exports = require("/home/node/myclass/crons/config.json"); var MongoClient = mongodb.MongoClient; ObjectId = module.exports = mongodb.ObjectID; var dbConnUrl = 'mongodb://' + config.DB_USERNAME + ':' + config.DB_PASSWORD + '@' + config.DB_HOST + ':' + config.DB_PORT + '/' + config.DB_NAME; console.log("dbConnUrl >> ", dbConnUrl); MongoClient.connect(dbConnUrl, { useNewUrlParser: true, useUnifiedTopology: true }, function (err, dclient) { if (err) { console.log("mongodb connection error >> ", err); process.exit(); } else { db = module.exports = dclient.db(); console.log("---------------------------mongodb connected-----------------------"); run(); } }); async function run() { await db.collection("notification_token").find({}).toArray(); process.exit(); }
about 4 years ago · Juan Pablo Isaza 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