如何在未捕获的异常发生时重新启动Node.js应用程序

如何在未捕获的异常发生时重新启动Node.js应用程序

在本文中,我们将学习当发生未捕获的异常时,如何重新启动Node.js应用程序。为此,我们将使用pm2模块。

方法: 让我们一步一步看看方法:

  • 步骤1: 安装 pm2模块 并使用它启动服务器。
  • 步骤2: 当发生未捕获的异常时,执行 process.exit() 命令停止服务器。
  • 步骤3: 然后,pm2模块将自动重新启动服务器。

    process.exit() 停止服务器,pm2强制启动。通过这种方式,服务器将重新启动。

实现: 下面是上述方法的逐步实现。

步骤1:初始化NPM: 在终端中创建和定位您的项目文件夹,并输入以下命令

npm init -y

它初始化我们的节点应用程序并创建一个package.json文件。

步骤2:安装依赖项: 将您的根项目目录定位到终端,并输入以下命令

npm install express pm2

将express和pm2作为依赖项安装到您的项目中

步骤3:创建商品列表: 让我们创建一个产品数组,并将其设置为常数产品。

const products = [];

步骤4:为主页和产品页创建路由:

让我们创建两个路由,以便用户可以访问主页和产品页。

app.get('/', (req, res) => {
   res.send('Hello Geeks!');
});

app.get('/products', (req, res) => {
   if (products.length === 0) {
       res.send('No products found!');
       process.exit();
   } else {
       res.json(products);
   }
});

在产品路由中,我们使用 process.exit() 方法来停止服务器。

完成的代码:

const express = require('express'); 
const app = express(); 
const products = []; 
  
app.get('/', (req, res) => { 
    res.send('Hello Geeks!'); 
}); 
  
app.get('/products', (req, res) => { 
    if (products.length === 0) { 
        res.send('No products found!'); 
        process.exit(); 
    } else { 
        res.json(products); 
    } 
}); 
  
  
app.listen(3000, ()=>{ 
    console.log('listening on port 3000'); 
});

运行应用程序的步骤: 在终端内输入以下命令来运行您的脚本 ‘app.js’ 使用pm2。

pm2 start app.js

输出:

如何在未捕获的异常发生时重新启动Node.js应用程序

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程