ข้ามไปยังเนื้อหาหลัก

ขีดจำกัดอัตราและโควตา API — รายวันและต่อนาที | Telm

เข้าใจขีดจำกัด Telm API สองแบบ คือ ขีดจำกัดอัตราต่อนาทีและโควตารายวันตามแพ็กเกจ อ่านเฮดเดอร์ X-Quota และจัดการการตอบกลับ 429 อย่างถูกต้อง

อ่าน 5 นาที
สรุปสั้นๆ

Telm วัด API สองวิธี คือ ขีดจำกัดอัตราต่อนาที(เพดานสำหรับการส่งพุ่งพรวด) และโควตารายวัน(งบประมาณรวมของคุณสำหรับวัน UTC) ทั้งสองปรับตามแพ็กเกจ ทุกการตอบกลับที่ถูกวัดจะคืน X-Quota-Limit, X-Quota-Used และ X-Quota-Reset เพื่อให้คุณรู้งบประมาณที่เหลืออยู่เสมอ และทั้งสองขีดจำกัดคืน 429 พร้อมเฮดเดอร์ Retry-After เมื่อเกิน

แผน API และโควตารายวันของคุณจะแสดงอยู่ที่หน้า Developers

1สองขีดจำกัด คือ อัตราต่อนาทีและโควตารายวัน

มีเพดานสองแบบแยกกัน ขีดจำกัดอัตราต่อนาทีจำกัดว่าคุณเรียกได้กี่ครั้งภายในหนึ่งนาทีใด ๆ ช่วยเกลี่ยการส่งที่พุ่งพรวดให้ราบเรียบ โควตารายวันคืองบประมาณโดยรวมของคุณ คือ มันจำกัดว่าคุณเรียกที่ถูกวัดได้กี่ครั้งตลอดทั้งวัน UTC

พวกมันเป็นอิสระต่อกัน คุณอาจถึงขีดจำกัดต่อนาทีในขณะที่ยังมีโควตารายวันเหลือมาก (คุณเพียงส่งเร็วเกินไป) หรือใช้โควตารายวันหมดในขณะที่อยู่ต่ำกว่าขีดจำกัดต่อนาทีมาก (คุณใช้วันหมดแล้ว) ทั้งสองคืนสถานะ 429 แต่ด้วยเหตุผลต่างกัน — ตรวจสอบรหัสข้อผิดพลาดในเนื้อเพื่อแยกแยะพวกมัน

  • ขีดจำกัดอัตราต่อนาที — เพดานสำหรับการส่งพุ่งพรวด รีเซ็ตทุกนาที
  • โควตารายวัน — การเรียกที่ถูกวัดทั้งหมดของคุณสำหรับวัน รีเซ็ตตอนเที่ยงคืน UTC
  • โควตาถูกนับครั้งเดียวต่อบัญชี ใช้ร่วมกันข้ามคีย์ทั้งหมดของคุณ

2โควตารายวันตามแพ็กเกจ

โควตารายวันของคุณคือจำนวนการเรียก API ที่ถูกวัดที่คุณทำได้ต่อวัน UTC และขึ้นกับแพ็กเกจของคุณ ตัวนับถูกใช้ร่วมกันข้ามคีย์ทั้งหมดของคุณและตามแพ็กเกจที่ดีที่สุดในบรรดากลุ่มที่คุณดูแล — หากไม่มีการสมัครสมาชิกแบบชำระเงิน คุณอยู่ในระดับ Free

หน้าต่างคือวันปฏิทิน UTC ดังนั้นตัวนับที่ใช้ของคุณรีเซ็ตเป็นศูนย์ตอนเที่ยงคืน UTC การตรวจสอบสแปมเป็นชุดคิดหนึ่งการเรียกต่อรายการในชุด ไม่ใช่หนึ่งการเรียกต่อทั้งคำขอ

  • Free — 100 การเรียกต่อวัน
  • Basic — 1,000 การเรียกต่อวัน
  • Pro — 10,000 การเรียกต่อวัน
  • Business — 50,000 การเรียกต่อวัน
เฉพาะการตรวจสอบสแปมเดี่ยวที่ถูกวัดสำหรับ Free และ Basic ส่วนที่เหลือของ API (รวมถึงการตรวจสอบสแปมเป็นชุด) ต้องใช้แพ็กเกจ Pro ขึ้นไป

3ขีดจำกัดอัตราต่อนาทีตามแพ็กเกจ

นอกเหนือจากโควตารายวัน แต่ละคีย์ API ถูกจำกัดจำนวนคำขอต่อนาทีตามระดับแพ็กเกจของมัน นี่เป็นขีดจำกัดแบบราบเรียบ คือ มันหยุดไคลเอนต์เดียวไม่ให้ส่งการพุ่งขึ้นมหาศาลในหนึ่งวินาที แม้เมื่องบประมาณรายวันยังห่างไกลจากการใช้หมด

แยกต่างหาก มีเพดานกว้าง ๆ ต่อ IP และต่อบัญชีที่ใช้ทั่วทั้ง API เพื่อรักษาเสถียรภาพของแพลตฟอร์ม ในการใช้งานปกติ — คำขอที่สม่ำเสมอและมีจังหวะ — คุณจะไม่มีวันแตะพวกนี้ มันทำงานเฉพาะกับการส่งพุ่งพรวดที่เป็นการใช้ในทางที่ผิด

  • Free และ Basic — 60 คำขอต่อนาที
  • Pro — 600 คำขอต่อนาที
  • Business — 1,800 คำขอต่อนาที
  • กระจายคำขอออกไปแทนที่จะยิงทั้งหมดในคราวเดียว

4การอ่านงบประมาณที่เหลือของคุณ

คุณไม่ต้องเดาว่าเหลือโควตาเท่าไร ทุกการตอบกลับที่ถูกวัด — สำเร็จหรือล้มเหลว — รวมสามเฮดเดอร์ คือ X-Quota-Limit (ขีดจำกัดรายวันของคุณ) X-Quota-Used (คุณใช้ไปกี่การเรียกในวันนี้) และ X-Quota-Reset (ช่วงเวลา ในหน่วย UTC ที่ตัวนับรีเซ็ต)

endpoint ตรวจสอบสแปมยังสะท้อนตัวเลขเดียวกันภายในเนื้อการตอบกลับใต้อ็อบเจกต์ quota เพื่อให้คุณอ่านงบประมาณที่เหลือได้โดยไม่ต้องแยกวิเคราะห์เฮดเดอร์ ใช้พวกนี้เพื่อจับจังหวะคำขอของคุณเองและเตือนตัวเองก่อนที่คุณจะใช้หมด

  • X-Quota-Limit — ขีดจำกัดการเรียกรายวันของคุณ
  • X-Quota-Used — การเรียกที่ใช้ไปแล้วในวันนี้
  • X-Quota-Reset — เวลารีเซ็ตในหน่วย UTC (RFC 3339)
  • การตอบกลับตรวจสอบสแปมยังรวมอ็อบเจกต์ quota พร้อมฟิลด์เดียวกัน

5เกิดอะไรขึ้นที่ 429

เมื่อคุณข้ามขีดจำกัดใดขีดจำกัดหนึ่ง API จะคืน HTTP 429 พร้อมเฮดเดอร์ Retry-After ที่บอกคุณว่าต้องรอกี่วินาที สำหรับขีดจำกัดอัตราต่อนาที Retry-After อยู่ที่ราวหนึ่งนาที สำหรับโควตารายวัน เนื้อพกรหัส daily_quota_exceeded บวกแพ็กเกจของคุณ ขีดจำกัด จำนวนที่ใช้ เวลารีเซ็ต และคำแนะนำให้อัปเกรด และ Retry-After นับถอยหลังไปยังเที่ยงคืน UTC

วิธีที่ถูกต้องในการจัดการ 429 คือถอยและลองใหม่หลังจากการหน่วง Retry-After ไม่ใช่กระหน่ำ endpoint ไคลเอนต์ที่ประพฤติดีจะอ่านเฮดเดอร์และหยุดพัก ไคลเอนต์ที่ลองใหม่ทันทีเรื่อย ๆ ก็แค่ถูกบล็อกต่อไป

  • 429 rate_limit_exceeded — คุณส่งเร็วเกินไป รอราวหนึ่งนาที
  • 429 daily_quota_exceeded — วันนี้ใช้หมดแล้ว รอจนถึงการรีเซ็ต UTC หรืออัปเกรด
  • เคารพเฮดเดอร์ Retry-After ก่อนลองใหม่เสมอ
อ่าน X-Quota-Used เทียบกับ X-Quota-Limit ในแต่ละการตอบกลับและชะลอลงเมื่อคุณเข้าใกล้ขีดจำกัด เพื่อให้คุณลดลงอย่างนุ่มนวลแทนที่จะชนกำแพงของ 429
บทความนี้มีประโยชน์ไหม?

พร้อมปกป้องกลุ่มของคุณแล้วหรือยัง?

เพิ่ม Telm เข้ากลุ่ม Telegram ของคุณ แล้วให้มันจัดการสแปมให้

บทความที่เกี่ยวข้อง