Lỗi 429 Too Many Requests: vì sao bị và xử lý thế nào

Cập nhật:

Lỗi 429 Too Many Requests nghĩa là máy chủ đã nhận quá nhiều request từ bạn trong một khoảng thời gian và tạm thời từ chối phục vụ. Đây không phải lỗi proxy hỏng hay sai mật khẩu, mà là tín hiệu bạn đang đi nhanh hơn mức website cho phép. Cách xử lý đúng gồm ba việc: dừng lại theo thời gian mà header Retry-After gợi ý, thử lại với độ trễ tăng dần (backoff), và giảm số request dồn lên mỗi IP bằng cách hạ tốc độ hoặc chia tải cho nhiều IP hơn. Bài này giúp bạn xác định 429 đến từ đâu, đọc nó thế nào và sửa tận gốc.

IP riêng để mỗi request là của bạn

429 khác gì các lỗi hay gặp khi dùng proxy

Khi chạy tool hay script qua proxy, bạn có thể gặp nhiều mã lỗi trông na ná nhau. Phân biệt đúng giúp bạn khỏi sửa nhầm chỗ, ví dụ đổi mật khẩu proxy trong khi vấn đề nằm ở tốc độ gửi request.

Mã lỗiAi trả vềÝ nghĩa thường gặpHướng xử lý
429 Too Many RequestsWebsite hoặc API đíchGửi quá nhiều request trong một cửa sổ thời gianChờ, backoff, giảm nhịp, chia tải IP
403 ForbiddenWebsite đíchBị từ chối truy cập, có thể do IP, vân tay hoặc quy tắc tường lửaXem lại header, hành vi, loại IP
503 Service UnavailableWebsite đích hoặc CDNMáy chủ quá tải hoặc đang bảo trì, đôi khi dùng thay cho 429Chờ và thử lại, đọc Retry-After
407 Proxy Authentication RequiredMáy chủ proxySai user, mật khẩu hoặc định dạngSửa thông tin xác thực
TimeoutKhông ai trả lời kịpMạng chậm, proxy hoặc website không phản hồiKiểm tra kết nối, tăng timeout hợp lý

Vì sao bạn bị 429

  • Gửi quá dày từ một IP: nhiều luồng cùng đi qua một proxy, hoặc vòng lặp không có độ trễ.
  • Thử lại ngay lập tức: mỗi lần lỗi lại gửi lại liền, làm số request tăng gấp nhiều lần đúng lúc website đang siết.
  • Nhiều tool dùng chung một IP: hai, ba script hay cả nhóm cùng cắm vào một proxy mà không ai biết tổng số request.
  • Hạn mức theo tài khoản hoặc API key: API giới hạn số lần gọi mỗi phút cho mỗi key, đổi IP không thay đổi được hạn mức này.
  • Cả dải IP bị siết: một số hệ thống chống bot đánh giá theo dải hoặc nhà cung cấp hạ tầng, không chỉ từng IP.
  • IP dùng chung với người khác: với proxy chia sẻ, request của người khác cũng tính vào ngưỡng. Proxy riêng loại bỏ được nguyên nhân này.

Bước 1: xác định 429 đến từ đâu

Trước khi sửa, hãy chắc chắn 429 do website đích trả về. In toàn bộ header phản hồi và xem các trường như Server, Retry-After hay các header giới hạn tốc độ. Thử mở cùng URL đó qua cùng proxy bằng curl -x http://user:pass@ip:port -I https://ten-mien/duong-dan. Nếu request đến trang khác như trang kiểm tra IP của tôi vẫn thành công qua proxy đó, proxy hoạt động bình thường và giới hạn nằm ở website đích.

Tiếp theo, xem 429 xuất hiện theo kiểu nào. Nếu chỉ một IP bị trong khi IP khác vẫn ổn, ngưỡng đang tính theo IP. Nếu mọi IP cùng bị một lúc, nhiều khả năng ngưỡng tính theo tài khoản, API key, phiên hoặc cả dải, và thêm IP sẽ không giải quyết được.

Bước 2: tôn trọng Retry-After và viết backoff

Header Retry-After có thể là số giây hoặc một mốc thời gian. Nếu có, chờ đúng khoảng đó rồi mới thử lại. Nếu không có, dùng backoff theo cấp số nhân: lần đầu chờ vài giây, mỗi lần sau gấp đôi, cộng thêm một phần ngẫu nhiên, và dừng sau một số lần thử cố định.

  • Python với requests: đọc wait = r.headers.get('Retry-After'); nếu là số thì time.sleep(int(wait)), nếu không thì time.sleep(min(60, 2 ** attempt) + random.uniform(0, 1)).
  • Scrapy: thêm 429 vào RETRY_HTTP_CODES, bật AUTOTHROTTLE_ENABLED = True và giảm CONCURRENT_REQUESTS_PER_DOMAIN.
  • Thư viện có sẵn: urllib3.util.Retry với status_forcelist=[429, 503], backoff_factor và respect_retry_after_header=True, gắn vào HTTPAdapter của Session.
  • Đặt giới hạn số lần thử, ví dụ năm lần, rồi ghi URL vào hàng đợi chạy lại sau thay vì thử mãi.

Bước 3: giảm nhịp và phân bổ lại IP

Backoff chỉ chữa triệu chứng. Để hết 429 lâu dài, tổng số request trên mỗi IP phải nằm dưới ngưỡng của website. Đầu tiên giảm số luồng đồng thời và thêm độ trễ ngẫu nhiên giữa các request. Sau đó, nếu khối lượng công việc thực sự cần nhanh hơn, chia tải cho nhiều IP riêng, mỗi IP giữ nhịp an toàn của nó. Cách tự xoay một danh sách IP được trình bày trong bài xoay danh sách proxy trong Python.

Khi một IP nhận 429, cho IP đó nghỉ vài phút thay vì chuyển ngay request sang IP kế tiếp với cùng nhịp cũ. Nếu bạn chỉ đổi IP mà không giảm tốc, cả nhóm sẽ lần lượt chạm ngưỡng. Cách đo ngưỡng và tính số IP cần có trong bài giới hạn tốc độ khi cào dữ liệu.

Khi gặp 429 lúc dùng trình duyệt hoặc tool tài khoản

Không chỉ script mới gặp 429. Trình duyệt antidetect mở nhiều profile cùng lúc trên một IP, tool đăng bài hàng loạt hay ứng dụng tự làm mới trang liên tục đều có thể chạm ngưỡng. Hãy kiểm tra xem bao nhiêu profile đang dùng chung một proxy, tắt tính năng tự làm mới, và giãn lịch thao tác. Với tài khoản mạng xã hội, 429 thường là cảnh báo sớm rằng hành vi đang quá nhanh; tiếp tục ép tốc độ có thể dẫn tới khoá tạm thời, và proxy không làm tài khoản miễn nhiễm với việc đó.

Nếu bạn dùng proxy chia sẻ giá rẻ, ngưỡng có thể bị người khác tiêu hết trước bạn. Proxy IPv4 riêng, mỗi IP cấp cho một khách, giúp bạn biết chắc toàn bộ request trên IP là của mình.

Checklist xử lý 429

  • Xác nhận 429 đến từ website đích, không phải lỗi proxy.
  • Đọc và tôn trọng Retry-After.
  • Backoff theo cấp số nhân có thêm phần ngẫu nhiên, giới hạn số lần thử.
  • Giảm số luồng đồng thời trên mỗi IP và mỗi domain.
  • Cho IP vừa bị 429 nghỉ, không đổ dồn sang IP khác.
  • Nếu mọi IP cùng bị, xem lại hạn mức tài khoản, API key hoặc hành vi thay vì mua thêm IP.
  • Ghi log URL, IP, mã trạng thái và thời điểm để thấy xu hướng.

Câu hỏi thường gặp

Lỗi 429 có phải do proxy bị hỏng không?

Không. 429 là phản hồi của website đích khi bạn gửi quá nhiều request. Proxy hỏng thường cho lỗi kết nối, timeout hoặc 407 nếu sai xác thực.

Bị 429 thì phải chờ bao lâu?

Nếu có header Retry-After thì chờ đúng giá trị đó. Nếu không có, bắt đầu từ vài giây và tăng gấp đôi mỗi lần thử lại, kèm giới hạn tối đa.

Đổi sang IP khác có hết 429 không?

Chỉ khi ngưỡng tính theo IP, và chỉ tạm thời nếu bạn không giảm nhịp. Nếu ngưỡng tính theo tài khoản, API key hay phiên, đổi IP không có tác dụng.

Proxy riêng có giúp giảm 429 không?

Có ở mức hợp lý: proxy riêng loại bỏ request của người khác trên cùng IP, nên ngưỡng chỉ tính cho bạn. Nhưng nếu chính bạn gửi quá dày, proxy riêng vẫn sẽ nhận 429.

IP riêng để mỗi request là của bạn

Proxy IPv4 riêng ở 7 nước và proxy ISP tĩnh ở Việt Nam, Mỹ. Mỗi IP chỉ cấp cho một khách, không giới hạn băng thông, hỗ trợ ticket 24/7.

Xem bảng giá

Bài viết liên quan

Kiến thức proxy
Giới hạn tốc độ khi cào dữ liệu: cào nhanh đến đâu là vừa
Giới hạn tốc độ khi cào dữ liệu: website đo request theo gì, đọc robots.txt, đặt nhịp và backoff, tính số IP cần cho khối lượng công việc của bạn.
Lỗi proxy
Lỗi proxy timeout: kết nối treo rồi hết thời gian chờ
Proxy timeout là khi kết nối tới proxy không có phản hồi trong thời gian chờ. Phân biệt curl (28), ERR_TIMED_OUT, chỉnh timeout cho Python và tìm chỗ bị chặn.
Lỗi proxy
Lỗi 407 Proxy Authentication Required là gì và sửa thế nào
Lỗi 407 proxy nghĩa là proxy đã nhận kết nối nhưng từ chối đăng nhập. Xem output curl thật, các nguyên nhân hay gặp và cách sửa trên Chrome, antidetect, code.
Proxy theo nền tảng
Proxy cho Web Scraping: cào dữ liệu tốc độ cao, không giới hạn băng thông
Mua proxy IPv4 riêng và ISP tĩnh tốc độ cao cho Python, Playwright, Selenium và Scrapy. Cào dữ liệu giá TMĐT, tin tức và API ổn định 24/7, băng thông thoải mái.
Sản phẩm
Proxy tĩnh (IP tĩnh dân cư ISP) Việt Nam & Mỹ
Mua proxy tĩnh ISP dân cư tại Mỹ và Việt Nam: IP đăng ký nhà mạng dân dụng, mỗi IP chỉ một khách dùng, băng thông không giới hạn. Xem giá và mua ngay.
Sản phẩm
Proxy IPv4 datacenter riêng
Mua, thuê proxy IPv4 datacenter riêng tại Mỹ, Việt Nam, Nhật Bản, Hàn Quốc, Singapore, Anh, Hồng Kông. HTTP(S), băng thông không giới hạn, kích hoạt tự động.
ISP · vietnam
Proxy ISP tĩnh Việt Nam: IP mạng gia đình cho các tài khoản giá trị nhất của bạn
Proxy dân cư tĩnh Việt Nam (ISP tĩnh): proxy IP tĩnh từ nhà mạng dân cư cho shop Shopee chính, TikTok Shop, tài khoản quảng cáo Facebook và Zalo OA.
IPV4 · united states
Proxy IPv4 riêng Mỹ: IP datacenter Hoa Kỳ nhanh, dùng riêng và ổn định
Thuê proxy IPv4 Mỹ dùng riêng cho cào dữ liệu, theo dõi thứ hạng, duyệt quảng cáo và nghiên cứu Amazon. IP tĩnh, 1 người 1 IP, băng thông không giới hạn.