在 CentOS 上 Node.js 启动慢,通常不是 Node 本身的问题,而是环境或配置导致的。下面按最常见原因 → 对应解决办法给你梳理一下。
Node 启动时会:
localhost如果 /etc/resolv.conf 配置不好,会卡几秒。
✅ 检查
cat /etc/resolv.conf
✅ 解决
8.8.8.8)/etc/hosts 加:127.0.0.1 localhost
Node 会读取主机名并解析。
✅ 检查
hostname
ping $(hostname)
❌ 如果 ping 不通,就会卡
✅ 解决
# /etc/hosts
127.0.0.1 your-hostname
npm start / npx 启动慢npx 会:
✅ 解决
node app.js
yum 的 node 很老✅ 检查
node -v
uname -m
✅ 推荐
nvm install 18
✅ 现象
require 很多模块时慢✅ 解决
pnpm某些服务首次连接会被拦截。
✅ 检查
getenforce
✅ 可临时测试
setenforce 0
例如:
await connectDB()
await redis.connect()
✅ 解决
Promise.race([
connect(),
timeout(3000)
])
time node app.js
node --trace-warnings app.js
NODE_OPTIONS=--dns-result-order=ipv4first node app.js
CentOS 上 Node 启动慢,90% 是 DNS / 主机名解析问题。
如果你愿意,可以告诉我:
我可以直接帮你精准定位。