# nvm 和 fnm

nvm (opens new window)fnm (opens new window) 都是 Node.js 版本管理工具,前者是符合 POSIX 标准的 bash 脚本,只支持 macOS 和 Linux 平台;后者是以 Rust 开发的,支持 macOS、Windows 和 Linux 平台。

# Nodemon

Nodemon (opens new window) 是 Node.js 应用的自动重启工具,开发时监听文件变化,自动重启应用,省去手动重启的麻烦。

Nodemon 的核心功能如下:

  • 监听文件变化 - 代码修改后自动重启

  • 开发体验优化 - 改完代码立即生效,无需手动 Ctrl+C 再启动

  • 可配置 - 可以指定监听哪些文件、忽略哪些目录

# 普通启动(每次改代码要手动重启)
node app.js

# 用 nodemon(改代码自动重启)
nodemon app.js
1
2
3
4
5

# PM2

PM2 (opens new window) 是 Node.js 应用的进程管理器,它可以让你的 Node.js 应用在服务器上稳定运行、自动重启、方便管理

没有 PM2,Node.js 应用崩溃就停了;有了 PM2,崩溃自动重启,生产环境必备工具。

PM2 的核心功能如下:

  • 守护进程 - 应用崩溃后自动重启,保证服务不中断

  • 后台运行 - 关闭终端后应用继续运行

  • 负载均衡 - 自动启动多个进程利用多核 CPU(cluster 模式)

  • 日志管理 - 自动收集和管理应用日志

  • 监控 - 实时查看 CPU、内存使用情况

  • 零停机重启 - 更新代码时不中断服务

# 启动应用
pm2 start app.js

# 查看所有应用状态
pm2 list

# 重启应用
pm2 restart app

# 查看日志
pm2 logs

# 开机自启动
pm2 startup
pm2 save
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
上次更新时间: 2025年10月07日 19:57:39