Next.js App Router Update

Bài tóm tắt Vercel 2023 4. Điều chỉnh Độ khó: Dễ

Vercel · 2023 · 4. Điều chỉnh · Độ khó: Dễ — 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 kế hoạch/ưu tiên của đội Next.js, không có số đo.

Bối cảnh

  • Theo Vercel, Pages Router không được thiết kế cho streaming, nên muốn dùng Server Components, Suspense thì phải đổi lõi kiến trúc. Bài viết ngày 22/6/2023, khoảng bảy tuần sau khi App Router "stable" (13.4, 4/5/2023); họ thừa nhận chưa hài lòng với trải nghiệm và adoption tăng làm lộ nhiều bug.

Thay đổi chính

  • Chuyển dần là không thể thương lượng: chuyển từng route sang App Router và quay lại Pages Router cho route đó nếu không hài lòng.
  • Hiệu năng dev: thay dần từng phần (Babel, Terser → SWC; webpack → Turbopack với engine tính toán gia tăng cache tới mức hàm), đồng thời vẫn vá kiến trúc webpack hiện tại: thêm modularizeImports mặc định cho thư viện icon lớn vốn buộc nạp lại hàng nghìn module mỗi request.
  • Production: tối ưu bộ nhớ và cold start của function trên Vercel, thêm tracing (thử nghiệm).
  • Ổn định: từ 13.4 đã vá nhiều lỗi lớn (bản 13.4.7); ưu tiên sửa lỗi trước tính năng mới.

Bài học cho SWE

  • Khi thay lõi, đầu tư song song cho kiến trúc cũ đang chạy, vì người dùng còn ở đó lâu hơn dự kiến.

Liên quan