# Next.js 在 VPS 上需要多少 RAM？

每个 Next.js 申请都没有单一的 RAM 要求。静态页面、基于会话的仪表板和呈现大型表格的页面执行不同的工作。仅每月访客数量并不能说明您需要的 VPS。

更好的问题是您的应用程序需要多少内存及其依赖项、并发峰值和部署工作流程。本指南在构建预算的同时将编译与处理访问者的服务器分开。

## 分离构建、空闲和加载

构建会转换源代码并可以提前生成页面。空闲服务器保留其运行时和加载的模块。在负载下，多个渲染、网络调用和响应可以一起激活。分别测量这三种状态。

当 CI 执行构建时，其峰值不会直接调整生产 VPS 的大小。如果同一台服务器构建并为站点提供服务，请在该时间间隔内为两者制定预算。新旧版本之间的部署重叠增加了另一个需要测试的场景。

## 衡量正确的流程

JavaScript 堆只是 Node 内存的一部分。 RSS 包括驻留进程页面，包括本机分配。在 Linux 上，PSS 按比例分配共享页面，在比较进程树时非常有用。

对于 systemd 服务，还要观察 cgroup 内存。它使用自己的会计来覆盖该组，这与 PSS 不同。记录指标并在运行之间保持一致。单独测量一个工人会忽略父工人、其他工人和本机组件。

```sh
systemctl show my-next-app.service -p MemoryCurrent -p MemoryPeak
ps -eo pid,ppid,rss,comm --sort=-rss
```

## 测量您的路线和交通高峰

在几次访问加载公共路径后观察空闲内存。然后将逐渐增加的负载应用于动态页面、API 和昂贵的路由。验证响应内容：轻量级错误页面可以在隐藏故障的同时产生令人印象深刻的吞吐量。

记录峰值内存、延迟、错误和并发。如果应用程序依赖于会话，则包括经过身份验证的流量。匿名主页流量可能无法描述客户仪表板。短期是一个起点，而不是几周内稳定的证据。

## 整个服务器的预算

添加操作系统、代理、任何数据库、应用程序以及峰值和部署的空间。使用来自目标服务器或代表性环境的测量结果。内存限制可以保护边界；它不能保证应用程序有足够的空间。

假设示例：从 2,048 MiB 中，为系统和共享服务保留 500 MiB，然后为峰值和部署重叠保留 400 MiB。这就留下了 1,148 MiB 供应用程序使用。这些值说明了计算结果，而不是 Next.js 最小值或通用建议。将它们替换为您的测量值。

## 阅读基准测试及其配置

在我们的 PRNext 与 Next.js 活动中，小型 VPS 上的普通 SSR 页面对 PRNext 使用 113.88 MiB PSS，对 Next.js 使用 101.38 MiB。对于另一台机器上的两个 CPU 预算，值为 117.50 和 173.30 MiB。排名取决于上下文。

这些结果描述了已识别的 PRNext 0.1.18-alpha 候选者、夹具应用和短窗口。他们不会衡量您的应用程序、其构建或最终版本档案。睡眠是另一种状态：它释放不活动的工人的记忆并增加唤醒成本。

[读取基准配置和数据](/zh/blog/prnext-vs-nextjs-vps-benchmarks)

[了解空闲内存和唤醒成本](/zh/blog/prnext-sleep-mode-memory)

## 从实际瓶颈出发决定

足够的内存并不能阻止饱和的 CPU 增加延迟。更多 CPU 不能修复保留的对象或数据库内存不足的问题。查找当请求减慢时降级的资源。

每次更改后重复相同的工作负载。如果记忆力在类似的工作中持续增长而没有稳定下来，请调查记忆力。如果峰值合理，请重新考虑构建的运行位置、进程计数或可用容量。

[诊断 Next.js 内存使用率较高](/zh/blog/diagnose-nextjs-memory-usage)

## Sources

[Next.js: memory usage](https://nextjs.org/docs/app/guides/memory-usage)

[Node.js: process.memoryUsage()](https://nodejs.org/api/process.html#processmemoryusage)

[Linux: proc filesystem memory metrics](https://docs.kernel.org/filesystems/proc.html)

[systemd: resource control](https://www.freedesktop.org/software/systemd/man/latest/systemd.resource-control.html)

已发表: 2026-10-30

修改的: 2026-10-30

作者: PRNext

---

语言: zh-Hans

Canonical: https://prnext.dev/zh/blog/nextjs-ram-vps-sizing

Index: https://prnext.dev/llms.txt
