centos

centos上nodejs如何进行集群部署

小樊
44
2025-04-26 18:25:02
栏目: 编程语言

在CentOS上进行Node.js集群部署,可以使用Node.js内置的cluster模块,或者使用第三方工具如PM2。下面分别介绍这两种方法:

方法一:使用Node.js内置的cluster模块

  1. 编写Node.js应用: 假设你已经有一个Node.js应用,例如app.js

  2. 创建集群: 修改你的应用代码,使用cluster模块来创建多个工作进程。

    const cluster = require('cluster');
    const http = require('http');
    const numCPUs = require('os').cpus().length;
    
    if (cluster.isMaster) {
      console.log(`Master ${process.pid} is running`);
    
      // Fork workers.
      for (let i = 0; i < numCPUs; i++) {
        cluster.fork();
      }
    
      cluster.on('exit', (worker, code, signal) => {
        console.log(`worker ${worker.process.pid} died`);
      });
    } else {
      // Workers can share any TCP connection
      // In this case it is an HTTP server
      http.createServer((req, res) => {
        res.writeHead(200);
        res.end('hello world\n');
      }).listen(8000);
    
      console.log(`Worker ${process.pid} started`);
    }
    
  3. 启动应用: 在终端中运行你的应用。

    node app.js
    

方法二:使用PM2

PM2是一个功能强大的Node.js进程管理工具,可以轻松实现集群部署。

  1. 安装PM2: 使用npm安装PM2。

    npm install pm2 -g
    
  2. 启动应用: 使用PM2启动你的Node.js应用,并指定工作进程的数量。

    pm2 start app.js -i <number_of_workers>
    

    其中<number_of_workers>是你希望启动的工作进程数量,通常设置为CPU核心数。

  3. 查看应用状态: 使用PM2查看应用的状态。

    pm2 status
    
  4. 停止应用: 使用PM2停止应用。

    pm2 stop app
    
  5. 重启应用: 使用PM2重启应用。

    pm2 restart app
    
  6. 查看日志: 使用PM2查看应用的日志。

    pm2 logs app
    

通过以上两种方法,你可以在CentOS上实现Node.js的集群部署。使用cluster模块可以更好地理解Node.js的集群机制,而使用PM2则更加方便和强大。

0
看了该问题的人还看了