Next.js Across Platforms: Adapters, OpenNext, and Our Commitments

Bài tóm tắt Vercel 2026 3. Quy mô lớn Độ khó: Trung bình

Vercel · 2026 · 3. Quy mô lớn · Độ khó: Trung bình — bài gốc

Vercel vừa làm framework Next.js vừa bán nền tảng chạy nó; nhận định về sản phẩm của họ trong trang này đều là "theo Vercel". Bài còn có lời của đối tác (Netlify, Cloudflare, OpenNext); chỉ giữ phần cơ chế.

Bối cảnh

  • Nhiều app Next.js chạy như một server Node.js next start; scale ra nhiều instance thì theo bài có những thứ phải đúng (cache sync giữa instance, revalidation lan truyền, streaming), nhưng cách chúng tương tác chưa từng được mô tả chính thức, nên nhà cung cấp khó hỗ trợ đầy đủ. Một kỹ sư Netlify nói khoảng 90% vấn đề quy về thiếu cách ổn định, có tài liệu để đọc build output. OpenNext (cộng đồng) lấp chỗ trống bằng cách dịch build output sang primitive của từng nhà cung cấp.

Thay đổi chính

  • Adapter API (Next.js 16.2): build sinh mô tả có kiểu và có phiên bản của ứng dụng (route, prerender, asset, luật cache, routing) để adapter ánh xạ lên hạ tầng; breaking change chỉ ở major. Adapter của Vercel dùng chính hợp đồng này, không có hook riêng (theo Vercel).
  • Bộ test dùng chung của Next.js mở cho tác giả adapter, cho kết quả đạt/không theo tính năng.
  • Adapter "verified": mã mở và qua toàn bộ test thì được liệt kê chính thức; adapter đóng nguồn vẫn dùng cùng API. Một working group với nhà cung cấp họp công khai.

Bài học cho SWE

  • Muốn hệ sinh thái chạy thứ mình làm ở nhiều nơi, cần một hợp đồng ổn định, có kiểu và phiên bản, không để họ dịch ngược đầu ra nội bộ.
  • Bộ test dùng chung là cách đo "tương thích" công bằng, kể cả với nền tảng của chính mình.

Liên quan