Nodemon仅在Node中启动Web服务器(而非数据库服务器)

时间:2019-04-24 13:52:18

标签: node.js nodemon

进行更改后,我正在使用nodemon重新启动我的节点应用程序。我的问题是在更改代码后,每次Web服务器和DB服务器都重新启动。我正在使用Oracle DB。下面是我的app.js代码:

const webServer = require('./services/web-server.js');
const database = require('./services/database.js');
const dbConfig = require('./config/database.js');
const defaultThreadPoolSize = 4;

async function startup() {
  console.log('Starting application');

  //Initializing web server module
  try {
    console.log('Initializing web server module');

    await webServer.initialize();
  } catch (err) {
    console.error(err);

    process.exit(1); // Non-zero failure code
  }

  //Initializing the Oracle DB
  try {
    console.log('Initializing database module');

    await database.initialize(); 
  } catch (err) {
    console.error(err);

    process.exit(1); // Non-zero failure code
  }

  //Stopping Oracle DB
   /*try {
    console.log('Closing database module');

    await database.close(); 
  } catch (err) {
    console.log('Encountered error', e);

    err = err || e;
  }*/


}

startup();

services / web-server.js,我正在创建一个如下所示的http服务器:

httpServer = http.createServer(app);

services / database.js,我正在为Oracle创建一个池:

  const pool = await oracledb.createPool(dbConfig.hrPool);

请建议我如何仅使用nodemon重新启动Web服务器?我不希望数据库连接总是重新启动...

1 个答案:

答案 0 :(得分:0)

您的数据库服务器不会在每次重新启动节点应用程序时重新启动。

正在发生的情况是您的节点在每次重新启动时都在重新创建与数据库的连接,这是正常现象,无法避免。

您可以通过连接到Oracle服务器并在节点应用程序停止时对其进行查询来进行检查。