Cloudflare Workers: Serverless Edge Computing Thay Vì Lambda

Cloudflare Workers: Serverless Edge Computing Thay Vì Lambda

Bạn có biết một request http://chuhung.net có thể được xử lý ở backed phủ 300+ thành phố trên toàn cầu, chỉ trong vài milliseconds? Cloudflare Workers — nền tảng serverless chạy trên edge locations — biến điều đó thành hiện thực, với cold start gần như bằng không.

Không như AWS Lambda dùng container, Workers dùng V8 isolates — cùng engine V8 trong Chrome — chạy code trong context nhẹ, chia sẻ process. Cold start từ 0-5ms so với 100-500ms ở Lambda. Cloud này hoạt động như thế nào và khi nào nên dùng?

V8 Isolates thay vì Container

AWS Lambda chạy function trong container. Container có cold start từ 100-500ms, thậm chí hàng giây với dependency lớn. Cloudflare Workers dùng V8 isolates — cùng engine V8 trong Chrome — chạy code trong context nhẹ, chia sẻ cùng process. Cold start từ 0-5ms.

V8 isolate là một context thực thi độc lập, được cô lập bởi sandbox. Không giống container, isolate không boot OS, không start VM — nó khởi tạo context JavaScript ngay. Đây là lợi thế then chốt cho các endpoint nhạy cảm trễ.

Hàng rack server trong data center ánh sáng xanh lá LED

So sánh hiệu năng

Metric Cloudflare Workers AWS Lambda
Cold start 0-5ms 100-500ms+
Mạng 300+ edge locations ~30 regions
Free tier 100K requests/ngày 1M requests/tháng
Exit traffic Free with R2 $0.09/GB
Ngôn ngữ JS/TS, Python, Rust/Wasm Nhiều hơn (Java, .NET, Go…)

Durable Objects: Stateful Edge

Serverless thông thường là stateless — mỗi request độc lắp. Durable Objects (DO) của Cloudflare phá vỡ nguyên tắc này. Mỗi DO là một actor với single-writer guarantee, có thể giữ state, xử lý WebSocket, và chạy code ẩn dụ qua WebSocket hibernation.

DO dùng SQLite làm backend, lý tưởng cho real-time apps: chat rooms, collaborative editors, multiplayer games. Với WebSocket hibernation, DO chỉ tính phí khi có traffic thực sự — không tính phí khi kết nối đang chờ người dùng gửi dữ liệu.

R2: Object Storage không tính exit fees

R2 là S3-compatible storage của Cloudflare — điểm khác biệt lớn nhất là không tính exit traffic fee. So với AWS S3 tính $0.09/GB egress, R2 tiết kiệm khoảng $90/tháng cho mỗi TB traffic. Đây là lý do nhiều startup chuyển từ S3 sang R2 khi traffic tăng.

  • 10GB storage miễn phí.
  • API tương thích S3 — chỉ cần đổi endpoint.
  • Billing dashboard theo dõi chi tiết.

D1: SQLite on Edge

D1 là SQLite database phân phối trên edge locations. Phù hợp cho apps cần relational queries nhưng không cần overhead của PostgreSQL/MySQL. 5GB storage miễn phí, 100K reads/ngày. D1 hỗ trợ read replication tự động — queries được đẩy tới edge location gần nhất.

Mạch in PCB với vi xử lý đại diện cho edge computing physical layer

Free tier cụ thể

  • Workers: 100K requests/ngày, 10ms CPU/request.
  • R2: 10GB storage, 1M Class A operations/tháng.
  • KV: 1GB storage, 100K reads/ngày.
  • D1: 5GB storage, 100K reads/ngày.
  • Durable Objects: 100K requests/ngày.

Pricing beyond free tier: $5/tháng base + $0.30/million requests + $0.02/million CPU ms. Static asset requests miễn phí.

Ai đang dùng Workers?

Những công ty lớn đang production trên Cloudflare Workers: Shopify (storefront), Discord (WebSocket), Canva, HubSpot, Figma, GitLab, PayPal. Workers đặc biệt phổ biến cho applications cần low latency và reduced egress cost.

Khi nào nên dùng Workers?

  • Cần low latency toàn cầu: Apps phục vụ user từ nhiều châu lục.
  • Cold start critical: Serverless functions cần phản hồi nhanh.
  • Cost-sensitive egress: Apps transfer nhiều data từ storage ra internet.
  • Real-time features: Chat, multiplayer, collaborative editing với Durable Objects.
  • Not ideal: Apps cần JVM/.NET/Go runtime, hay workloads CPU-heavy vượt 10ms.

Phân tích chi tiết: Workers vs Deno Deploy vs Netlify Functions

Ba platform đều chạy JavaScript/TypeScript trên edge, nhưng có khác biệt lớn về architecture và pricing. Deno Deploy dùng Deno isolates — tương tự nhưng ecosystem nhỏ hơn, không có Durable Objects. Netlify Functions dùng AWS Lambda bên dưới — cùng cold start problem. Workers giữ vị thế độc tôn nhờ vào V8 isolates cực nhẹ và free tier rất hào phóng.

Metric Cloudflare Workers Deno Deploy Netlify Functions
Cold start 0-5ms ~5ms 100-500ms+
Global network 300+ edge locations ~35 regions ~30 regions
Free tier 100K req/ngày 100K req/ngày 1M req/tháng
Exit traffic fee Free (R2) $0.10/GB $0.06/GB
Stateful edge Durable Objects Không Không

Limitations và khi nào nên chọn platform khác

Workers không phải lúc nào cũng là lựa chọn đúng. Runtime hỗ trợ JS/TS/Python natively, Rust/C/C++/Go qua WebAssembly. Nhưng không hỗ trợ Java, .NET, Ruby trực tiếp. Nếu team bạn cần Spring Boot hay .NET runtime, Workers không phù hợp.

CPU time limit mỗi request là 10ms trên free tier, 50ms trên paid. Nếu bạn cần xử lý nặng (image processing, ML inference), hãy cân nhắc Lambda hoặc container riêng. Tuy nhiên, Workers AI tích hợp LLM inference trực tiếp — phù hợp cho chatbot nhẹ hoặc summarization.

Kết luận

Cloudflare Workers không thay thế Lambda — hai nền tảng phục vụ use case khác nhau. Workers thắng ở cold start, egress cost, và global distribution. Lambda thắng ở ecosystem maturity và sự đa dạng ngôn ngữ. Với R2, D1, Durable Objects, Cloudflare đang xây dựng một ecosystem serverless edge computing thực sự hoàn chỉnh.

Nguồn tham khảo

Tôi là một lập trình viên IOS. Code chính là IOS nhưng thỉnnh thoảng vẫn đá sang Android hoặc web. Mặc dù không quá thông thạo nhưng tôi sẽ chia sẻ những kiến thức mà mình đã tìm hiểu, áp dụng qua.

Bài viết liên quan

Sơ đồ workflow migrate và sqlc trong CI/CD pipeline

Database migration an toàn với Golang golang-migrate sqlc Atlas so sánh

Tại sao cần database migration tool trong Golang Khi xây dựng ứng dụng production với Golang, việc quản lý thay đổi schema database là bài toán bắt buộc. Ba công…

Xem thêm

TypeScript 5.5: type inference cải tiến, decorators chuẩn hóa, isolated declarations

Giới thiệu TypeScript 5.5 mang đến những cải tiến đáng kể cho hệ thống kiểu dữ liệu, khiến mã nguồn an toàn hơn và dễ bảo trì hơn. Bài viết…

Xem thêm

So sánh các web framework Python phổ biến

Giới thiệu So sánh các web framework Python phổ biến là một trong những chủ đề nóng nhất trong thời gian qua. Bài viết này sẽ cung cấp một cái…

Xem thêm
0 0 đánh giá
Article Rating
Theo dõi
Thông báo của
guest
0 Comments
Cũ nhất
Mới nhất Được bỏ phiếu nhiều nhất