~/VibeHandbook
PDF miễn phí

Cloudflare

developers.cloudflare.com

Cloudflare Workers

Nó là gì

Hãy hình dung một chuỗi quán cà phê có cùng một công thức pha chế ở mọi thành phố, nên dù bạn đang ở đâu, bạn cũng lấy đồ uống từ cửa hàng gần nhất. Cloudflare Workers hoạt động theo cách tương tự: chúng cho phép bạn chạy JavaScript, TypeScript, hoặc WebAssembly trên mạng lưới toàn cầu của Cloudflare — hơn 300 thành phố — thay vì chỉ ở một khu vực. Mỗi request (yêu cầu) chạy trong một môi trường thu nhỏ, tách biệt gọi là V8 isolate. Nó khởi động trong chưa đầy một mili-giây, nên gần như không có "cold start" (thời gian khởi động chậm cho request đầu tiên). Bạn viết một fetch handler, triển khai bằng một lệnh duy nhất, và code của bạn tự động chạy gần với mọi người dùng.

Điểm mạnh

  • Cold start gần như bằng không nhờ V8 isolates thay vì đầy đủ.
  • Mặc định là toàn cầu — code của bạn được triển khai đến mọi vị trí của Cloudflare cùng một lúc.
  • Gói miễn phí hào phóng; trả tiền theo request và thời gian CPU, không phải theo thời gian nhàn rỗi.
  • Bindings (các kết nối dựng sẵn) hạng nhất tới D1 (một cơ sở dữ liệu ), R2 (lưu trữ file), KV (kho lưu trữ key-value, giống như một cuốn từ điển khổng lồ ánh xạ nhãn tới giá trị), Queues, Durable Objects, và Workers AI.
  • Một (công cụ dòng lệnh mà bạn gõ lệnh vào) duy nhất wrangler đảm nhiệm việc phát triển, quản lý secrets, và triển khai.

Đánh đổi

  • Runtime không phải là Node.js — nhiều gói npm có phụ thuộc native hoặc filesystem sẽ không hoạt động, dù khả năng tương thích với Node đang được cải thiện.
  • Thời gian CPU và bộ nhớ cho mỗi request bị giới hạn, nên các tác vụ tính toán nặng không phù hợp.
  • Không có đĩa cục bộ hay trạng thái tồn tại lâu dài trong tiến trình; bạn phải dùng bindings thay thế.
  • Việc thực thi phân tán khiến việc debug từng bước (step-through debugging) qua các khu vực trở nên khó khăn hơn.

Khi nào nên dùng

Hãy chọn Workers khi bạn muốn một (Application Programming Interface — tập hợp các điểm cuối mà phần mềm khác gọi để giao tiếp với ứng dụng của bạn) nhanh và phân tán toàn cầu, middleware ở , kiểm tra xác thực, chuyển hướng, xử lý , hoặc một full-stack tận dụng các bindings lưu trữ và AI của Cloudflare.

Phù hợp với vibe coding

Workers là một trong những đích triển khai thân thiện nhất cho lập trình do AI dẫn dắt: dự án chỉ gồm một file cấu hình duy nhất cộng với một handler, và một có thể scaffold (dựng khung), gắn kết các dịch vụ, và triển khai từ đầu đến cuối. Hãy nói rõ với agent ngay từ đầu rằng bạn đang nhắm tới Workers (không phải Node) để nó tôn trọng các giới hạn của runtime và sử dụng bindings thay vì, chẳng hạn, fs. Ví dụ dưới đây kết nối một Worker với một KV namespace.

# wrangler.toml
name = "my-worker"
main = "src/index.ts"
compatibility_date = "2026-06-01"

[[kv_namespaces]]
binding = "CACHE"
id = "your-kv-namespace-id"
npx wrangler dev      # local edge runtime
npx wrangler deploy   # ship to the global network