Giới hạn số lượng request đồng thời (concurrent requests) từ một trình duyệt tới một tên miền (cùng cookie) phụ thuộc vào trình duyệt và phiên bản, và có thể thay đổi theo thời gian. Dưới đây là bảng tóm tắt các giới hạn phổ biến nhất:
Mục lục
🔎 Giới hạn số lượng request đồng thời tới 1 tên miền (per domain per browser)
Trình duyệt | Giới hạn đồng thời (per domain) | Ghi chú |
---|---|---|
Chrome (hiện đại) | ~6 requests | Có thể tăng lên tùy phiên bản và cấu hình |
Firefox | ~6 requests | Có thể cấu hình bằng network.http.max-persistent-connections-per-server |
Safari | ~6 requests | Tương tự như Chrome |
Edge | ~6 requests | Dựa trên nhân Chromium |
Internet Explorer 11 | ~6 requests | Phiên bản cũ, ít dùng |
Opera | ~6 requests | Nhân Chromium, hành vi giống Chrome |
Mobile browsers | 4–6 requests | Tùy thuộc vào thiết bị và hệ điều hành |
📌 Một số điểm cần lưu ý:
-
Giới hạn này áp dụng cho mỗi tên miền (hostname). Nếu bạn phân chia tài nguyên sang các subdomain (ví dụ:
img.example.com
,cdn.example.com
), bạn có thể “lách” giới hạn này → gọi là domain sharding (ít dùng ngày nay do HTTP/2, HTTP/3 hỗ trợ multiplexing). - HTTP/2 và HTTP/3 (QUIC) giải quyết phần lớn giới hạn này nhờ khả năng multiplex nhiều request qua 1 kết nối TCP/UDP, nhưng trình duyệt vẫn duy trì cơ chế giới hạn nội bộ để tránh nghẽn tài nguyên.
✅ Cách kiểm tra thực tế:
Bạn có thể kiểm tra giới hạn này bằng cách:
-
Mở DevTools (trong Chrome), tab Network → làm tải nhiều file ảnh (hoặc JS/CSS) từ cùng 1 domain → quan sát số request được giữ lại ở trạng thái “pending”.
-
Sử dụng script JS để tạo nhiều
XMLHttpRequest
hoặcfetch()
cùng lúc.
🔧 Kết luận:
-
Mặc định hiện nay: ~6 requests đồng thời/tên miền/trình duyệt.
-
Nên sử dụng HTTP/2 hoặc HTTP/3 để tối ưu băng thông và loại bỏ giới hạn “per domain connection”.
-
Tách domain (CDN, subdomain) chỉ nên làm khi bắt buộc (ví dụ: phục vụ legacy HTTP/1.1 hoặc mục tiêu đặc biệt).