ขีดจำกัดและโควต้าช่วยปกป้องโครงสร้างพื้นฐานของ Google จากกระบวนการอัตโนมัติที่ใช้ Alert Center API ในทางที่ไม่เหมาะสม คำขอที่มากเกินไปจาก API อาจเกิดจากการพิมพ์ผิดที่ไม่มีอันตราย หรืออาจเกิดจากระบบที่ออกแบบมาอย่างไม่มีประสิทธิภาพซึ่งทำให้มีการเรียก API โดยไม่จำเป็น ไม่ว่าสาเหตุจะเป็นอะไร การบล็อกการรับส่งข้อมูลจากแหล่งที่มาที่เฉพาะเจาะจงเมื่อถึงระดับหนึ่งเป็นสิ่งจำเป็นต่อสุขภาพโดยรวมของระบบ Google Workspace ซึ่งจะช่วยให้มั่นใจได้ว่าการกระทำของนักพัฒนาแอปคนหนึ่งจะไม่ส่งผลเสียต่อชุมชนในวงกว้าง
ในกรณีที่คำขอ API ไม่สำเร็จ คุณจะได้รับการตอบกลับเป็นรหัสสถานะ HTTP รหัสสถานะ 403 มีข้อมูลข้อผิดพลาดเกี่ยวกับการป้อนข้อมูลที่ไม่ถูกต้อง และรหัสสถานะ HTTP 503 มีข้อมูลข้อผิดพลาดที่ระบุว่าโควต้า API ใดที่เกิน การตอบกลับเหล่านี้ช่วยให้แอปพลิเคชันที่กำหนดเองตรวจหาข้อผิดพลาดเหล่านี้และดำเนินการอย่างเหมาะสมได้
หากคำขอของคุณต้องดำเนินการให้เสร็จภายในระยะเวลาที่กำหนด ให้ส่งคำขอแบบขนานหรือใช้หลายเธรดในแอปพลิเคชัน Java หรือ C# ตัวอย่างคำขอแบบขนานคือการขออีเมลเป็นชุดเล็กๆ จากผู้ใช้ที่แตกต่างกัน แทนที่จะเพิ่มหรือนำอีเมลจำนวนมากออกจากผู้ใช้รายเดียวพร้อมกัน ในกรณีของชุดข้อความ ให้ลองเริ่มด้วยชุดข้อความ 10 ชุด โดยมีชุดข้อความ 1 ชุดต่ออีเมลของผู้ใช้ 1 ราย โปรดทราบว่าคำแนะนำเกี่ยวกับเธรดมีข้อดีข้อเสียและไม่เหมาะกับสถานการณ์ API ทั้งหมด หากจำนวนคำขอสูงเกินไป จะเกิดข้อผิดพลาดเกี่ยวกับโควต้า
สำหรับข้อผิดพลาดทั้งหมดที่อิงตามเวลา (สูงสุด N รายการเป็นเวลา N วินาทีต่อเธรด) โดยเฉพาะข้อผิดพลาดรหัสสถานะ 503 เราขอแนะนำให้โค้ดของคุณดักข้อยกเว้นและใช้อัลกอริทึมการถอยแบบทวีคูณเพื่อรอการหน่วงเวลาเล็กน้อยก่อนที่จะลองเรียกที่ล้มเหลวอีกครั้ง ตัวอย่าง Alert Center API สำหรับ 1 เธรดคือการรอ 5 วินาทีแล้วลองเรียกที่ล้มเหลวอีกครั้ง หากคำขอสำเร็จ ให้ทำตามรูปแบบนี้กับเธรดอื่นๆ หากคำขอครั้งที่ 2 ไม่สำเร็จ แอปพลิเคชันควรลดความถี่ของคำขอจนกว่าการเรียกจะสำเร็จ เช่น เพิ่มการหน่วงเวลาเริ่มต้น 5 วินาทีเป็น 10 วินาที แล้วลองโทรอีกครั้ง นอกจากนี้ ให้กำหนดขีดจำกัดการลองอีกครั้งด้วย เช่น ลองส่งคำขออีกครั้ง 5-7 ครั้งโดยมีเวลาหน่วงที่แตกต่างกันก่อนที่แอปพลิเคชันจะแสดงข้อผิดพลาดแก่ผู้ใช้
| หมวดหมู่ขีดจำกัด API | จำกัดสูงสุด |
|---|---|
| อัตรา QPS และ QPD ของศูนย์แจ้งเตือน | API จะจำกัดจำนวนคำขอสำหรับโปรเจ็กต์คอนโซล API จำนวนคำขอสูงสุดต่อวินาที (QPS ของโปรเจ็กต์) ของโปรเจ็กต์ API คือ 1,000 และจำนวนคำขอสูงสุดต่อผู้ใช้ต่อวินาที (QPS ของผู้ใช้) คือ 150
หากเกินขีดจำกัดเหล่านี้ เซิร์ฟเวอร์จะแสดงรหัสสถานะ HTTP |
| ขีดจำกัดประเภทอื่นๆ | ข้อจำกัดและหลักเกณฑ์ |
|---|---|
| รูปแบบข้อมูล ค่าเริ่มต้น | รูปแบบข้อมูลเริ่มต้นคือ JSON |
| คำขอที่ไม่ได้รับอนุญาต | Google ไม่อนุญาตคำขอที่ไม่ได้รับอนุญาตไปยัง API นี้ ระบบจะถือว่าคำขอไม่ได้รับอนุญาตหากไม่มีโทเค็นการให้สิทธิ์ ดูข้อมูลเพิ่มเติมได้ที่การให้สิทธิ์คำขอ |
ขอเพิ่มโควต้าต่อโปรเจ็กต์
คุณอาจต้องขอปรับโควต้าตามการใช้ทรัพยากรของโปรเจ็กต์ การเรียก API โดยบัญชีบริการจะถือว่าเป็นการใช้บัญชีเดียว การขอโควต้าที่ปรับแล้วอาจไม่ได้รับการอนุมัติเสมอไป คำขอปรับโควต้า ซึ่งจะเพิ่มค่าโควต้าอย่างมากอาจใช้เวลานานกว่าในการอนุมัติ
โปรเจ็กต์แต่ละโปรเจ็กต์อาจมีโควต้าไม่เท่ากัน เมื่อคุณใช้ Google Cloud มากขึ้นเรื่อยๆ ค่าโควต้าอาจต้องเพิ่มขึ้น หากคาดว่าการใช้งานจะเพิ่มขึ้นอย่างเห็นได้ชัดในอนาคต คุณสามารถขอปรับโควต้าล่วงหน้าได้จากหน้าโควต้าใน Google Cloud Console
ดูข้อมูลเพิ่มเติมได้ที่แหล่งข้อมูลต่อไปนี้