前端/移动开发面试题更新 2026-08-05

请解释 PM2 是什么,并说明如何利用它来部署 Node.js 项目。

前端/移动开发风险判断系统设计技术原理Node.js

考察说明

考查对 Node.js 进程管理工具 PM2 的理解及其在实际部署中的应用能力。

回答思路

  1. 【回答框架 1】PM2 是 Node.js 的进程管理器,用于守护进程、自动重启、负载均衡和日志管理。它确保应用在崩溃或服务器重启后自动恢复,并支持多实例运行以利用多核 CPU。
  2. 【回答框架 2】部署步骤:首先全局安装 PM2,使用 npm install -g pm2。然后在项目根目录启动应用,命令为 pm2 start app.js,其中 app.js 是入口文件。PM2 会默认以守护进程方式运行,并分配一个进程 ID。
  3. 【回答框架 3】常用操作:pm2 list 查看所有进程状态,pm2 logs 查看日志,pm2 restart <app> 重启应用,pm2 stop <app> 停止应用,pm2 delete <app> 删除进程。这些命令便于日常管理和监控。
  4. 【回答框架 4】高级配置:通过 ecosystem.config.js 文件定义多应用部署、环境变量、日志路径等。使用 pm2 start ecosystem.config.js 启动。PM2 还支持集群模式,通过 -i max 参数利用所有 CPU 核心,实现负载均衡。
  5. 【回答框架 5】持久化:使用 pm2 save 保存当前进程列表,pm2 startup 生成开机自启脚本,确保服务器重启后 PM2 自动恢复所有应用。这是生产环境部署的关键步骤。
  6. 【关键点 1】PM2 核心功能是进程守护和自动重启,保证应用高可用。
  7. 【关键点 2】部署基本流程:安装、启动、管理、保存和设置开机自启。
  8. 【关键点 3】集群模式可提升性能,但需注意应用状态管理,避免内存共享问题。
  9. 【易错点 1】不要忽略 pm2 save 和 pm2 startup,否则服务器重启后应用不会自动恢复。
  10. 【易错点 2】集群模式下,如果应用使用内存存储会话或缓存,会导致数据不一致,需改用外部存储如 Redis。
  11. 【易错点 3】PM2 的日志文件可能快速增长,应配置日志轮转或定期清理,避免磁盘空间耗尽。