在CentOS上配置Node.js集群可以通過多種方式實現,其中最常見的是使用PM2(Process Manager 2)。PM2是一個功能強大的Node.js進程管理器,可以幫助你管理和監控Node.js應用程序。以下是使用PM2配置Node.js集群的步驟:
首先,確保你已經在CentOS上安裝了Node.js。你可以使用以下命令來安裝Node.js:
# 使用NodeSource安裝Node.js
curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -
sudo yum install -y nodejs
接下來,安裝PM2:
sudo npm install pm2 -g
假設你已經有一個Node.js應用程序,或者你可以創建一個新的簡單應用程序來測試集群配置。以下是一個簡單的Node.js應用程序示例:
// app.js
const http = require('http');
const server = http.createServer((req, res) => {
res.writeHead(200, { 'Content-Type': 'text/plain' });
res.end('Hello World\n');
});
server.listen(3000, () => {
console.log('Server running at http://localhost:3000/');
});
使用PM2啟動你的Node.js應用程序,并指定要啟動的實例數量。例如,如果你想啟動4個實例,可以使用以下命令:
pm2 start app.js -i 4
-i 4
參數表示啟動4個實例。
你可以使用以下命令來查看和管理你的Node.js集群:
查看所有進程:
pm2 list
查看特定進程的詳細信息:
pm2 show <app_name_or_id>
停止所有進程:
pm2 stop all
重啟所有進程:
pm2 restart all
刪除所有進程:
pm2 delete all
為了更方便地管理你的Node.js應用程序,你可以創建一個PM2生態系統文件(例如 ecosystem.config.js
):
module.exports = {
apps: [
{
name: 'my-app',
script: 'app.js',
instances: 4,
autorestart: true,
watch: false,
max_memory_restart: '1G',
env: {
NODE_ENV: 'development'
},
env_production: {
NODE_ENV: 'production'
}
}
]
};
然后使用以下命令啟動應用程序:
pm2 start ecosystem.config.js
PM2提供了強大的監控和日志管理功能。你可以使用以下命令來查看日志:
pm2 logs
你也可以指定特定的應用程序來查看日志:
pm2 logs <app_name_or_id>
通過以上步驟,你可以在CentOS上成功配置和管理Node.js集群。