Linux上高效运行 Node.js 的实用指南
一 基础环境搭建与版本管理
二 进程管理与高可用部署
三 系统层面优化
四 应用层性能与稳定性最佳实践
五 快速检查清单
| 优化项 | 关键动作 | 验证方式 |
|---|---|---|
| Node 版本 | 使用 NVM 固定 LTS | node -v |
| 进程管理 | PM2 集群模式(instances: ‘max’)并配置 ecosystem.config.js | pm2 status、pm2 list |
| 自启动 | PM2:pm2 startup systemd 并 pm2 save;或 systemd 服务 | systemctl is-enabled nodeapp、pm2 list |
| 系统限额 | ulimit -n 提升至 65535 并写入 limits.conf | ulimit -n、cat /etc/security/limits.conf |
| 内核网络 | 调整 somaxconn/tcp_tw_reuse 等并 sysctl -p | sysctl net.core.somaxconn |
| 传输优化 | Nginx 启用 Gzip/HTTP/2 | curl -I -H ‘Accept-Encoding: gzip’ 与响应头 |
| 缓存与数据库 | 建立索引、连接池、Redis 缓存 | 慢查询日志、命中率与延迟指标 |