Cloudflare ra mắt Workers Cache: Tối ưu hiệu năng cho ứng dụng Server-Rendered
Cloudflare vừa giới thiệu Workers Cache, tính năng cho phép tích hợp bộ nhớ đệm trực tiếp vào Worker, giúp giảm thiểu chi phí CPU và độ trễ cho các ứng dụng server-rendered mà không cần cấu hình phức...
Cloudflare vừa chính thức ra mắt Workers Cache, một giải pháp bộ nhớ đệm phân tầng (tiered cache) được thiết kế riêng cho các Worker. Với tính năng này, các nhà phát triển có thể cấu hình cache trực tiếp thông qua mã nguồn và các tiêu đề Cache-Control quen thuộc, giúp tối ưu hóa hiệu năng mà không cần đến các thiết lập phức tạp trên bảng điều khiển.
Table Of Content
Cơ chế hoạt động của Workers Cache
Khi Workers Cache được kích hoạt, mọi yêu cầu có thể lưu trữ (cacheable) sẽ được kiểm tra tại bộ nhớ đệm của Cloudflare trước khi thực thi mã Worker. Nếu có phản hồi hợp lệ, Cloudflare sẽ trả về trực tiếp, giúp Worker không cần chạy và người dùng không phải trả phí cho thời gian CPU. Trong trường hợp cache miss, Worker mới bắt đầu thực thi và lưu trữ kết quả cho các yêu cầu tiếp theo.
Điểm khác biệt cốt lõi là bộ nhớ đệm này gắn liền với Worker thay vì gắn với zone (tên miền). Điều này có nghĩa là cache sẽ đi theo Worker bất kể nó chạy trên tên miền tùy chỉnh, workers.dev, hay trong các kiến trúc phức tạp như service binding.
Tại sao ứng dụng Server-Rendered cần Workers Cache?
Trước đây, các framework hiện đại như Next.js, Remix hay SvelteKit khi triển khai trên Cloudflare thường đóng vai trò là origin. Điều này dẫn đến việc mọi yêu cầu đều phải thực thi mã nguồn, gây lãng phí tài nguyên dù nội dung phản hồi có thể giống hệt nhau. Workers Cache thay đổi kiến trúc này bằng cách đặt bộ nhớ đệm phía trước Worker, cho phép:
- Tối ưu hóa chi phí: Giảm thiểu số lần thực thi Worker, từ đó tiết kiệm chi phí CPU.
- Cải thiện độ trễ: Phản hồi từ cache giúp người dùng nhận được nội dung gần như tức thì.
- Hỗ trợ
stale-while-revalidate: Cho phép phục vụ nội dung cũ trong khi Worker âm thầm làm mới cache ở background, đảm bảo trải nghiệm người dùng không bị gián đoạn.
Khả năng tùy biến cao với HTTP Standard
Workers Cache hỗ trợ đầy đủ tiêu chuẩn HTTP, bao gồm cả tiêu đề Vary. Điều này cho phép bạn lưu trữ nhiều biến thể của cùng một URL dựa trên các header như Accept-Encoding hay Accept-Language. Ngoài ra, việc xóa cache (purge) cũng trở nên đơn giản và chính xác hơn thông qua các API lập trình như ctx.cache.purge({ tags: ["product:123"] }).
Hệ thống phân tầng tự động
Mỗi Worker sử dụng tính năng này đều được hưởng lợi từ hệ thống cache phân tầng (tiered cache) của Cloudflare mà không cần cấu hình thêm. Với hai lớp cache (cục bộ tại data center gần người dùng và lớp trên để tổng hợp dữ liệu), tỷ lệ cache hit sẽ được cải thiện đáng kể, giúp ứng dụng của bạn đạt được hiệu suất tối ưu trên phạm vi toàn cầu.
Workers Cache hiện đã khả dụng cho tất cả các gói dịch vụ của Cloudflare và có thể được kích hoạt dễ dàng thông qua Wrangler.
Nguồn tham khảo: Cloudflare Blog



No Comment! Be the first one.