🛠️ Project: dựng lớp bảo vệ và bảng theo dõi chi phí cho API

By Better Wise

Bài trước bạn đã đặt ngân sách và biết cảnh báo ở 50/80/100%. Giờ mình ghép tất cả lại thành một API thật: một endpoint POST /api/chat gọi dịch vụ AI bên thứ ba, có đủ rate limiting, quota, captcha, validate input và một bảng theo dõi chi phí.

Lý do mình bắt bạn làm bài này: tháng 3 năm ngoái mình mở một endpoint chat "cho vui", không giới hạn gì. Sáng hôm sau hoá đơn là $1.240 trong 9 tiếng, gần như toàn bộ đến từ một script đổi IP liên tục, mỗi request đẩy max_tokens lên 4.000. Bài học duy nhất: đặt giới hạn trước khi mở cửa.

Đề bài: một endpoint, sáu lớp chặn, một bảng chi phí

Giả sử giá nhà cung cấp: input $0.50 / 1M tokens, output $1.50 / 1M tokens. Một request trung bình 1.000 input + 500 output tokens:

  • Chi phí một request: $0.0005 + $0.00075 = $0.00125
  • 10.000 request/ngày = $12.50/ngày ≈ $375/tháng (mức bình thường)
  • Bị bot đẩy lên 100.000 request/ngày = $3.750/tháng (mức làm bạn mất ngủ)

Nhiệm vụ của bạn: dựng lớp bảo vệ sao cho con số thứ hai không bao giờ xảy ra, và có một bảng cho biết tiền đang đi đâu mỗi ngày.

Spec: sáu lớp xếp theo thứ tự này

Thứ tự quan trọng hơn bạn tưởng. Rẻ nhất chạy trước.

flowchart TD
  Req["📥 Request"] --> V["🧹 Validate input"]
  V --> C["🤖 Captcha"]
  C --> R["🚦 Rate limit IP + user"]
  R --> Q["📊 Quota user"]
  Q --> B["💰 Budget check"]
  B --> AI["☁️ AI API"]
  AI --> L["🧾 Ghi log chi phí"]
Lớp Ngưỡng gợi ý Trả về khi vượt
Validate input rỗng, > 4.000 ký tự, sai schema 400
Captcha request đầu session, hoặc điểm nghi ngờ bot cao 403
Rate limit IP 20 request/phút 429
Rate limit user 5 request/phút 429
Quota user 50 request/ngày, 200k token/ngày 402
Ngân sách tổng $10/ngày, $200/tháng 503

Khung middleware, rút gọn cho dễ đọc:

In this lesson

  • Chia việc thành 5 mốc trong 35 phút
  • Nghiệm thu: sáu phép thử phải qua
  • Đóng lại: bạn vừa có gì trong tay

About this course

Part of Chống lạm dụng API: rate limit, bot và chi phí AI — Đặt giới hạn gọi API, chặn bot cơ bản và kiểm soát chi phí API AI để sản phẩm không bị lạm dụng hay vượt ngân sách.

Level
Beginner
Goal
Build a project
Language
Vietnamese
Focus
rate limiting và quota chống bot cơ bản kiểm soát chi phí API AI cảnh báo ngân sách
Prior knowledge
Biết viết API đơn giản, Đã từng gọi API bên thứ ba
Practice
Exercises + capstone project
Time
~2.5h
Voice
một founder từng nhận hóa đơn API trên trời, dạy bằng ví dụ chi phí cụ thể và luôn nhắc 'đặt giới hạn trước khi mở cửa'
Not covered
WAF nâng cao, phát hiện gian lận bằng ML, hạ tầng chống DDoS chuyên sâu

This lesson is premium content. Sign in and purchase the course to view the full content. Sign in