© 2026 Laravel

API Optimization: Tối ưu hiệu năng ở mức Architect

1 phút đọc
#api #performance #optimization #json

Mục lục bài viết

Sử dụng các mục để điều hướng nhanh

#1. Pagination chiến lược

  • Offset Pagination: (?page=1) - Chậm khi offset quá lớn (phải scan qua N bản ghi).
  • Cursor Pagination: Dùng cursorPaginate() của Laravel. Nó không dựa vào page mà dựa vào ID cuối cùng (where id > last_id). Cực kỳ nhanh với bảng triệu dòng.

#2. JSON Optimization

  • Eager Loading: Luôn with() quan hệ.
  • API Resources: Dùng để lọc field (chỉ trả về những gì client cần).
  • JSON Compression: Bật Gzip hoặc Brotli ở tầng Nginx. Payload giảm 70-80% là chuyện bình thường.

#3. Phỏng vấn

Q: Làm sao xử lý API trả về 10.000 record mà không treo server? A: Không bao giờ trả về 10.000 record trong 1 request. Sử dụng Pagination hoặc Streaming Response. Nếu bắt buộc, dùng LazyCollection để đọc từng dòng và stream ra response trực tiếp.

Bài viết liên quan