Nguồn: Cloudflare Engineering

Tóm tắt

Bài viết này là phần tiếp theo trong chuỗi bài về việc loại bỏ cold starts trong Cloudflare Workers. Cloudflare đã giải quyết vấn đề cold start thông qua kỹ thuật “pre-warming” isolates trước khi yêu cầu thực sự đến, nhưng vẫn còn tồn tại những trường hợp gây ra độ trễ khởi động đáng kể, đặc biệt liên quan đến TLS handshake và quá trình thiết lập kết nối.

Một trong những nguyên nhân chính gây ra cold start là việc mỗi Worker phải chờ TLS certificate được tải và xác thực khi nhận yêu cầu đầu tiên. Cloudflare đã áp dụng chiến lược “sharding” — phân chia các Workers thành các nhóm nhỏ hơn và phân phối chúng trên nhiều tiến trình, giúp giảm thiểu thời gian khởi tạo và cải thiện hiệu suất tổng thể.

Kỹ thuật sharding cho phép Cloudflare tải trước các tài nguyên như TLS certificates và mã nguồn của Worker vào bộ nhớ trước khi có yêu cầu thực tế. Điều này giúp giảm đáng kể thời gian phản hồi đầu tiên, từ hàng trăm milliseconds xuống còn gần bằng không đối với nhiều trường hợp sử dụng.

Các cải tiến kiến trúc này đòi hỏi phải thiết kế lại cách Workers được lập lịch và quản lý trên toàn bộ mạng lưới toàn cầu của Cloudflare. Hệ thống mới có khả năng dự đoán tốt hơn nhu cầu tài nguyên và phân bổ chúng một cách thông minh, đảm bảo rằng các Worker luôn ở trạng thái sẵn sàng phục vụ yêu cầu với độ trễ tối thiểu.

👉 Đọc bài gốc