Cloudflare Origin Range Requests: tối ưu cache tệp lớn ra sao?
Cloudflare mở Origin Range Requests cho mọi gói ngày 23/10/2026. Kiến trúc Pingora dùng chunk cố định, ghép dữ liệu cache và phần còn thiếu thay vì chọn range size thủ công.

Một người xem tua đến giữa video chỉ cần vài MB, nhưng cache cấu hình kém có thể kéo hàng trăm MB từ máy chủ gốc. Tình huống tương tự xảy ra khi tải tiếp file ISO, lấy metadata trong archive hoặc đọc một phần model AI. Quản trị hệ thống cần tối ưu phần dữ liệu thực sự được yêu cầu, không chỉ tăng băng thông.
Ngày 23/10/2026, Cloudflare mở Origin Range Requests dưới dạng tính năng tự phục vụ cho mọi gói. Tính năng dùng kiến trúc cache dựa trên Pingora để xử lý yêu cầu byte-range mà không bắt khách hàng chọn kích thước range cố định.
HTTP Range giải quyết việc gì?
Client gửi header Range để xin một đoạn byte của tài nguyên. Nếu máy chủ hỗ trợ, phản hồi thường là 206 Partial Content kèm Content-Range. Video player dùng cơ chế này khi tua; trình tải dùng nó để tiếp tục sau gián đoạn; kho gói hoặc workload AI có thể lấy một vùng nhỏ của tệp lớn.
GET /model.bin HTTP/1.1
Host: example.com
Range: bytes=1048576-2097151Cách cũ ánh xạ yêu cầu vào range có kích thước được cấu hình. Range quá nhỏ tạo nhiều lượt gọi origin; range quá lớn tải thừa. Cloudflare nêu ví dụ cấu hình 64 MiB của R2: một yêu cầu nhỏ cắt qua ranh giới có thể kéo 128 MiB giữa các trung tâm dữ liệu.
Kiến trúc mới giới hạn phần tải thừa
Pingora đã lưu tệp cache thành các chunk cố định để có thể tiếp tục tải. Origin Range Requests tận dụng chính chunk này: kiểm tra byte nào đã có, lấy phần thiếu theo ranh giới chunk, lưu lại rồi chỉ trả đúng đoạn client yêu cầu. Nếu một lượt tải đang diễn ra đã bao phủ đoạn cần thiết, yêu cầu sau có thể gắn vào thay vì mở lượt tải origin mới.
Hệ thống còn kiểm tra kích thước tài nguyên và entity tag để không ghép byte từ hai phiên bản khác nhau. Nếu không thể xử lý range an toàn, nó trả tài nguyên đầy đủ thay vì quảng bá một range sai. Tính năng cũng không biến nội dung vốn không cache được thành nội dung cache được; origin vẫn phải hỗ trợ byte-range.
Đọc đúng số liệu Cloudflare
Sau khi chuyển R2 sang kiến trúc mới, Cloudflare cho biết p99 time to first byte giảm khoảng một nửa trên cả cache hit và miss. Một cải tiến tiếp theo giảm khoảng 6% lưu lượng tiered cache theo tuần cho R2 và workload tương tự. Đây là số liệu nội bộ của Cloudflare, không phải cam kết rằng website bất kỳ sẽ đạt cùng tỷ lệ.
| Workload phù hợp | Điều cần xác minh |
|---|---|
| Video có tua | Origin trả 206 đúng và cache key không bị phân mảnh ngoài ý muốn |
| Tải tiếp file lớn | ETag ổn định, hỗ trợ If-Range và kiểm tra file sau tải |
| Kho gói, ISO, archive | Tệp cache được, thời gian hết hạn và cập nhật phiên bản rõ ràng |
| Model AI | Mẫu truy cập thực sự đọc từng vùng; không giả định mọi framework dùng Range |
Checklist triển khai không làm origin quá tải
- Ghi lại tỷ lệ phản hồi 200, 206 và 416 trước khi thay đổi.
- Kiểm tra origin hỗ trợ Range, ETag và Content-Length nhất quán.
- Tách rule cho đuôi file hoặc đường dẫn lớn; không bật toàn site ngay.
- Đo cache hit, byte lấy từ origin, request count, p95/p99 và lỗi hủy giữa chừng.
- Thử đồng thời nhiều request vào cùng một file và các đoạn chồng lấn.
- Kiểm tra hành vi khi file thay đổi trong lúc đang tải và khi cache bị xóa.
- So sánh chi phí CDN với lưu lượng origin thay vì chỉ nhìn tốc độ phía người dùng.
Với máy chủ tại Việt Nam, CDN giúp giảm lượt truyền quốc tế cho nội dung được cache, nhưng không chữa được origin thiếu IOPS, ứng dụng sinh file động chậm hoặc cache-control sai. Đọc thêm băng thông trong nước và quốc tế và monitoring máy chủ để tách nghẽn mạng khỏi nghẽn lưu trữ.
Đội vận hành có thể gửi mẫu URL, kích thước file, header cache, log 200/206, lưu lượng giờ cao điểm và vị trí người dùng tới hotro@thuemaychu.vn. Nếu origin cần tài nguyên riêng, tham khảo bảng giá máy chủ; việc chọn cấu hình chỉ nên thực hiện sau khi xác định điểm nghẽn.
Nguồn tham khảo
Bật Origin Range Requests có làm mọi file được cache không?
Không. Nội dung vẫn phải đáp ứng điều kiện cache bình thường, và origin cần hỗ trợ byte-range.
Có cần tự chọn kích thước range không?
Không với tính năng mới. Cloudflare dùng chunk cố định trong hệ thống cache và tự phối hợp phần đã có, đang tải và còn thiếu.
Số liệu giảm p99 một nửa có áp dụng cho mọi website không?
Không. Đó là kết quả Cloudflare đo trên R2. Hiệu quả thực tế phụ thuộc file, mẫu truy cập, cache hit, origin và mạng.
Cần máy chủ cho workload này?
NOC thuemaychu.vn hỗ trợ chọn CPU, GPU và băng thông. PoC trong 24 giờ.
Bài viết liên quan
Data CenterBăng thông trong nước và quốc tế: cách chọn gói thuê máy chủ
Cổng 1 Gbps không có nghĩa mọi kết nối đều đạt 1 Gbps. Hiểu cam kết mạng và kiểm thử đúng đích trước khi thuê máy chủ.
GPU / AIGPUDirect Storage với KvikIO: đọc dữ liệu thẳng vào GPU
Bài kỹ thuật NVIDIA ngày 22/10/2026 giải thích KvikIO, cuFile và cách xác nhận dữ liệu thực sự đi qua đường GPUDirect Storage thay vì CPU.
Máy chủMonitoring máy chủ: từ tài nguyên đến lỗi ứng dụng
Monitoring máy chủ cần trả lời hai câu hỏi: người dùng có sử dụng được dịch vụ không và nếu có lỗi thì bottleneck ở đâu. Chỉ nhìn CPU/RAM không đủ phát hiện database sai quyền, chứng chỉ hết hạn hoặc backup đã ngừng nhiều ngày.