Phát hiện gian lận tại Edge: Cloudflare Workers + tracio.ai
Chạy xác thực device fingerprint trong Cloudflare Workers trước khi request đến origin. Quyết định chống gian lận dưới 5ms ngay tại edge.
Phát hiện gian lận truyền thống diễn ra ở tầng ứng dụng: request đến server của bạn, bạn gọi API phát hiện gian lận, chờ phản hồi, rồi mới quyết định cho phép hay chặn. Vòng round-trip này thêm 50-200ms độ trễ vào mỗi request — chấp nhận được với việc tải trang, nhưng gây khó chịu với API endpoint, lời gọi AJAX và các tương tác thời gian thực.
Sẽ thế nào nếu bạn có thể ra quyết định chống gian lận trước khi request đến origin server? Đó chính là điều mà edge computing cho phép, và Cloudflare Workers là nền tảng chúng tôi dùng để minh họa mô hình này.
Kiến trúc
Thiết lập gồm ba thành phần: tracio.ai JS SDK (@tracio/sdk) chạy trong trình duyệt, một Cloudflare Worker nằm giữa client và origin của bạn, và các webhook tracio.ai đã ký gửi phân tích tín hiệu đầy đủ về backend của bạn.
Luồng hoạt động như sau: JS SDK thu thập các tín hiệu thiết bị và gửi đến tracio.ai trong lúc tải trang, trả về một visitorId cho trình duyệt. Backend của bạn nhận kết quả nhận diện đầy đủ — phân loại bot, smart signals, độ tin cậy — qua một webhook đã ký và ghi verdict vào một edge cache. Trình duyệt đính kèm visitorId trong các request API tiếp theo (qua header hoặc cookie). Cloudflare Worker chặn mỗi request, tra cứu verdict đã cache cho visitorId đó, và ra quyết định cho phép/chặn dưới 5ms.
Triển khai Worker
Worker duy trì một cache nhẹ chứa các kết quả xác minh thiết bị gần đây bằng KV storage của Cloudflare, được điền vào bởi backend của bạn khi các webhook tracio.ai đã ký đến. Khi một request đến kèm header visitorId, Worker kiểm tra cache. Nếu verdict đã được cache và khách truy cập sạch (bot score thấp, không có VPN, độ tin cậy trên ngưỡng), request được cho qua ngay lập tức. Nếu chưa có verdict nào được cache, Worker áp dụng chính sách dự phòng của bạn — cho qua với một rate limit thận trọng, hoặc challenge — cho đến khi cache do webhook điều khiển bắt kịp.
Điểm mấu chốt là cache xác minh được điền một cách chủ động. Lần tải trang đầu tiên kích hoạt thu thập tín hiệu và cache kết quả. Mọi lời gọi API tiếp theo từ khách đó đều trúng cache — không cần round-trip đến tracio.ai. Cache TTL có thể cấu hình; chúng tôi khuyến nghị 5 phút cho các endpoint bảo mật cao và 30 phút cho nội dung thông thường.
Con số hiệu năng
Chúng tôi đã đo benchmark kiến trúc này với một khách hàng xử lý 50.000 request mỗi phút qua Cloudflare Workers. Kết quả:
Tỷ lệ cache hit: 94% (phần lớn request đến từ khách đã tải một trang). Độ trễ quyết định tại edge (cache hit): trung vị 1,2ms, 3,8ms p99. Độ trễ quyết định tại edge (cache miss): trung vị 45ms (bao gồm lời gọi API đến tracio.ai). Tiết kiệm độ trễ origin: trung vị 120ms mỗi request (loại bỏ kiểm tra gian lận phía server).
Tỷ lệ cache hit 94% nghĩa là 94% quyết định chống gian lận diễn ra dưới 4ms tại edge, không cần đến origin. 6% còn lại là các request lần đầu truy cập, đòi hỏi một vòng round-trip API đầy đủ.
Chiến lược chặn
Worker hỗ trợ ba chiến lược chặn, có thể cấu hình theo từng route:
Hard block: Trả về 403 ngay lập tức cho các khách rủi ro cao (bot score > 0,9, framework tự động hóa đã biết). Soft block: Thêm các header X-Tracio-Risk và để origin quyết định. Cách này hữu ích khi bạn muốn ngữ cảnh ở tầng ứng dụng cho quyết định. Challenge: Chuyển hướng các khách khả nghi (bot score trung bình, phát hiện VPN) đến một trang challenge đòi hỏi xác minh bổ sung.
Chúng tôi khuyến nghị bắt đầu với soft block trong môi trường production, theo dõi phân bố rủi ro trong một tuần, rồi bật hard block cho các trường hợp rõ ràng (bot đã biết, headless browser, tự động hóa với độ tin cậy cao).
Phân tích chi phí
Giá của Cloudflare Workers dựa trên số request và thời gian compute. Ở mức 50K request/phút (2,16 tỷ/tháng), chi phí Worker vào khoảng 500 USD/tháng. So sánh với mức tiết kiệm độ trễ: loại bỏ 120ms kiểm tra gian lận phía origin giảm 15-20% mức dùng CPU server, thường tiết kiệm được nhiều hơn chi phí Worker về compute.
Giá trị thực sự nằm ở việc phòng chống gian lận: bắt bot và các request gian lận trước khi chúng tiêu tốn tài nguyên origin, kết nối database và các lời gọi API downstream. Một khách hàng đã giảm số origin server từ 12 xuống 8 sau khi triển khai phát hiện gian lận dựa trên edge — những con bot từng ngốn 30% compute của họ không bao giờ đến được origin.