Next.js 16 与 Remix 对比
Next.js 16(默认启用 Turbopack、支持部分预渲染)与 Remix(Shopify 出品,注重 Web 标准)——2026 年 React 元框架对比。
Git push 之后自动管理一切的托管平台
固定月费的服务器,完全掌控,完全担责
没有绝对的赢家,这是两种不同的责任分配模式。如果流量呈突发性、团队缺乏 DevOps 能力,Vercel 的自动扩容值回票价。如果流量可预测且处于中等水平、并且已经具备 systemd/nginx/Cloudflare 的运维习惯,Hetzner + Cloudflare 能让账单保持固定,并在数据合规方面更具优势。分水岭在于带宽与 ISR 写入量——先实测一个月,再做决定。
| 分类 | Vercel | Hetzner VPS (self-host) |
|---|---|---|
| 性能 | 8/10 | 7/10 |
| 学习难易度 | 9/10 | 5/10 |
| 生态系统 | 9/10 | 7/10 |
| 社区 | 8/10 | 7/10 |
| 就业市场 | 7/10 | 7/10 |
| 面向未来 | 8/10 | 8/10 |
# Vercel —— 零配置 Next.js 部署 + 环境变量 + Edge Config 示例
# 1) 在项目根目录通过 vercel.json 设置函数区域和 cron 任务
{
"regions": ["fra1"],
"crons": [
{ "path": "/api/cron/revalidate", "schedule": "0 */6 * * *" }
]
}
# 2) 使用 CLI 部署(构建+TLS+CDN 自动完成)
npx vercel --prod
# 3) 为降低 ISR 写入单元(1 单元 = 8 KB,无内含配额)的成本,
# 根据流量调整 revalidate 时间
export const revalidate = 3600; // 每小时重新生成一次
# 4) 为减少 Fast Origin Transfer,
# 强制将函数输出缓存为静态内容
export async function GET() {
return Response.json(
{ data: "ok" },
{ headers: { "Cache-Control": "public, s-maxage=600" } }
);
}# Hetzner VPS —— Next.js standalone 自托管 + systemd + nginx
# 1) next.config.js —— standalone 输出模式(官方自托管指南)
module.exports = {
output: "standalone",
};
# 2) 构建 + 复制 standalone 所需文件
npm run build
cp -r .next/static .next/standalone/.next/static
cp -r public .next/standalone/public
# 3) systemd unit —— 进程管理(以 portfolio-ssr.service 为例)
[Unit]
Description=Next.js standalone server
After=network.target
[Service]
Type=simple
User=portfolio
WorkingDirectory=/var/www/app/.next/standalone
ExecStart=/usr/bin/node server.js
Restart=on-failure
Environment=PORT=4000
NoNewPrivileges=true
ProtectHome=true
[Install]
WantedBy=multi-user.target
# 4) nginx 反向代理(Next.js 官方建议)
server {
listen 443 ssl;
server_name example.com;
location / {
proxy_pass http://127.0.0.1:4000;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
# 5) 安装 sharp —— Image Optimization 的必需依赖
npm install sharp没有绝对的赢家,这是两种不同的责任分配模式。如果流量呈突发性、团队缺乏 DevOps 能力,Vercel 的自动扩容值回票价。如果流量可预测且处于中等水平、并且已经具备 systemd/nginx/Cloudflare 的运维习惯,Hetzner + Cloudflare 能让账单保持固定,并在数据合规方面更具优势。分水岭在于带宽与 ISR 写入量——先实测一个月,再做决定。
获取免费咨询具体比例取决于流量和 ISR 写入量,但结构性差异很明确:Vercel Pro 基础费用为每月 $20,外加按用量计费的附加费用(快速数据传输 $0.15+/GB、边缘请求每 100 万次 $2、ISR 写入每 100 万个写入单元 $4);而 Hetzner VPS 只收取固定的月租,只要不超过附带的流量配额就不会产生额外费用。如果你的带宽/ISR 写入量较低,差距可能不明显;一旦用量上升,Vercel 的账单会成倍增长,而 Hetzner 保持固定。也要把 2026 年 Hetzner 的两次涨价(尤其是 CCX/CPX 系列)计算在内,结合自己的实际流量来核算两边的成本。