centos

Node.js在CentOS上如何进行集群部署

小樊
43
2025-09-09 17:50:43
栏目: 编程语言

在CentOS上进行Node.js集群部署可以通过多种方式实现,其中最常用的是使用PM2(Process Manager 2)。PM2是一个功能强大的Node.js进程管理器,可以帮助你管理和监控Node.js应用程序。以下是使用PM2在CentOS上进行Node.js集群部署的步骤:

1. 安装Node.js

首先,确保你的CentOS系统上已经安装了Node.js。如果没有安装,可以通过以下命令安装:

# 使用NodeSource仓库安装Node.js
curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -
sudo yum install -y nodejs

2. 安装PM2

使用npm安装PM2:

sudo npm install pm2 -g

3. 启动Node.js应用程序

假设你的Node.js应用程序的入口文件是app.js,你可以使用以下命令启动它:

pm2 start app.js --name my-app

4. 创建集群

PM2支持多种集群模式,最常用的是基于CPU核心数的集群模式。你可以使用以下命令创建一个基于CPU核心数的集群:

pm2 start app.js -i max

这里的-i max参数表示根据CPU核心数自动创建相应数量的进程。

5. 查看和管理集群

你可以使用以下命令查看当前运行的进程:

pm2 list

要停止某个进程,可以使用:

pm2 stop my-app

要重启某个进程,可以使用:

pm2 restart my-app

要删除某个进程,可以使用:

pm2 delete my-app

6. 配置PM2

你可以创建一个PM2配置文件(例如ecosystem.config.js)来管理你的应用程序。以下是一个简单的配置文件示例:

module.exports = {
  apps: [{
    name: 'my-app',
    script: 'app.js',
    instances: 'max', // 根据CPU核心数自动创建进程
    exec_mode: 'cluster', // 使用集群模式
    autorestart: true,
    watch: false,
    max_memory_restart: '1G',
    env: {
      NODE_ENV: 'development'
    },
    env_production: {
      NODE_ENV: 'production'
    }
  }]
};

然后使用以下命令启动应用程序:

pm2 start ecosystem.config.js --env production

7. 监控和日志管理

PM2提供了丰富的监控和日志管理功能。你可以使用以下命令查看实时日志:

pm2 logs my-app

要查看历史日志,可以使用:

pm2 logs my-app --lines 1000

8. 负载均衡

PM2会自动处理负载均衡,确保每个进程都能均匀地处理请求。

通过以上步骤,你可以在CentOS上使用PM2轻松地进行Node.js集群部署。PM2不仅简化了进程管理,还提供了许多有用的功能,如自动重启、日志管理和监控等。

0
看了该问题的人还看了