ขีดจำกัดการใช้งาน

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

โดยจะกำหนดขีดจำกัดในรูปของหน่วยโควต้า ซึ่งเป็นหน่วยวัดเชิงนามธรรม ที่แสดงถึงการใช้ทรัพยากรของ Google ไดรฟ์

โควต้า Drive API

ระบบจะบังคับใช้โควต้า 3 ประเภท ดังนี้

  • ต่อนาทีต่อโปรเจ็กต์: นี่คือจำนวนหน่วยโควต้าที่โปรเจ็กต์ Google Cloud ใช้ได้ใน 1 นาที

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

  • ต่อวันต่อโปรเจ็กต์: กำหนดจำนวนไบต์สูงสุดที่โปรเจ็กต์ Google Cloud สามารถส่งออกได้ภายในระยะเวลา 24 ชั่วโมงก่อนที่จะมีการเรียกเก็บเงิน

ตารางต่อไปนี้แสดงรายละเอียดขีดจํากัดเหล่านี้

ประเภทขีดจำกัดการใช้งาน ขีดจำกัด
ต่อนาทีต่อโปรเจ็กต์ หน่วยโควต้า 1,000,000 หน่วย
ต่อนาทีต่อผู้ใช้ต่อโปรเจ็กต์ หน่วยโควต้า 325,000 หน่วย
ต่อวันต่อโปรเจ็กต์ 1 TB

หากใช้เกินโควต้า คุณจะได้รับการตอบกลับเป็นรหัสสถานะ HTTP 403: User rate limit exceeded การตรวจสอบการจำกัดอัตราเพิ่มเติมในแบ็กเอนด์ของไดรฟ์ อาจสร้างการตอบกลับ 429: Rate limit exceeded ได้เช่นกัน หากเกิดกรณีเช่นนี้ คุณควรใช้อัลกอริทึม Exponential Backoff แล้วลองอีกครั้งในภายหลัง

เกณฑ์การเรียกเก็บเงินรายวัน

ขีดจำกัดต่อวันต่อโปรเจ็กต์นี้กำหนดจำนวนหน่วยโควต้าสูงสุดที่โปรเจ็กต์ Google Cloud ของคุณใช้ได้ภายในระยะเวลา 24 ชั่วโมงก่อนที่จะมีการเรียกเก็บเงิน

การใช้งานที่ต่ำกว่าเกณฑ์นี้จะไม่มีค่าใช้จ่ายเพิ่มเติมและระบบจะไม่เรียกเก็บเงินจากบัญชี Google Cloud ของคุณ เราจะแชร์รายละเอียดการเรียกเก็บเงินทั้งหมดในภายหลังของปี 2026 โดยจะแจ้งให้ทราบล่วงหน้าอย่างน้อย 90 วันก่อนที่การเปลี่ยนแปลงจะมีผล

คุณจะขอเพิ่มขีดจำกัดเกณฑ์รายวันนี้ไม่ได้

ตารางต่อไปนี้แสดงรายละเอียดขีดจำกัด

ประเภทขีดจำกัดของเกณฑ์ ขีดจำกัด
ต่อวันต่อโปรเจ็กต์ หน่วยโควต้า 400,000,000 หน่วย

โปรดดูข้อมูลเพิ่มเติมที่โมเดลมาตรฐานของ Google Workspace สำหรับเครื่องมือและ API ของตัวแทน

การใช้งานโควต้าต่อเมธอด

จำนวนหน่วยโควต้าที่ใช้ต่อคำขอจะแตกต่างกันไปตามเมธอดที่เรียกใช้ ตารางต่อไปนี้แสดงการใช้งานหน่วยโควต้าต่อวิธี

การดำเนินการ หน่วยโควต้า
อ่านรายการต่างๆ เช่น files.get 5
รายการ เช่น files.list 100
ดาวน์โหลดรายการ เช่น files.download 200
แก้ไขรายการ เช่น files.update 50
การดำเนินการอื่นๆ เช่น files.generateIds 5

ข้อบังคับเพิ่มเติม

ข้อจำกัดต่อไปนี้จะมีผลเมื่อใช้ Drive API

  • ผู้ใช้ Google Workspace จะอัปโหลดข้อมูลระหว่างไดรฟ์ของฉันกับไดรฟ์ที่แชร์ทั้งหมดได้ 750 GB ต่อวันเท่านั้น โดยข้อจำกัดนี้ยังใช้กับการคัดลอกด้วย

  • โดยผู้ใช้ที่ใช้โควต้าถึง 750 GB หรืออัปโหลดไฟล์ที่มีขนาดใหญ่กว่า 750 GB จะอัปโหลดหรือคัดลอกไฟล์อื่นไม่ได้อีกจนกว่าจะผ่านไป 24 ชั่วโมง

  • ผู้ใช้อัปโหลดไฟล์ได้สูงสุด 5 TB โดยจะมีเฉพาะไฟล์แรกที่เกินขีดจำกัดเท่านั้นที่จะอัปโหลดจนเสร็จสิ้น ผู้ใช้จะคัดลอกไฟล์ได้สูงสุด 750 GB

  • การแจ้งเตือนที่ส่งไปยังที่อยู่ที่ระบุเมื่อเปิดช่องทางการแจ้งเตือนจะไม่นับรวมในโควต้าที่จำกัด อย่างไรก็ตาม การเรียกใช้เมธอด changes.watch channels.stop และ files.watch จะ นับรวมในโควต้า

  • หากคุณใช้โควต้าต่อนาทีตามที่กำหนด คุณจะส่งคำขอได้ไม่จำกัดจำนวนต่อวัน

  • คุณอาจมีขีดจำกัดพื้นที่เก็บข้อมูล Google ไดรฟ์เพิ่มเติม ทั้งนี้ขึ้นอยู่กับประเภทบัญชี Google Workspace

แก้ไขข้อผิดพลาดเกี่ยวกับโควต้าตามเวลา

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

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

ตัวอย่างอัลกอริทึม

อัลกอริทึม Exponential Backoff จะลองส่งคำขออีกครั้งแบบทวีคูณ โดยจะเพิ่มเวลารอ ระหว่างการลองส่งอีกครั้งจนถึงเวลา Backoff สูงสุด เช่น

  1. ส่งคำขอไปยัง Google Drive API
  2. หากคำขอไม่สำเร็จ ให้รอ 1 + random_number_milliseconds แล้วลองส่งคำขออีกครั้ง
  3. หากคำขอไม่สำเร็จ ให้รอ 2 + random_number_milliseconds แล้วลองส่งคำขออีกครั้ง
  4. หากคำขอไม่สำเร็จ ให้รอ 4 + random_number_milliseconds แล้วลองส่งคำขออีกครั้ง
  5. และอื่นๆ สูงสุด maximum_backoff ครั้ง
  6. รอและลองอีกครั้งต่อไปจนกว่าจะถึงจำนวนครั้งสูงสุดที่ลองใหม่ได้ แต่ไม่ต้องเพิ่มระยะเวลารอ ระหว่างการลองใหม่

where:

  • เวลารออยู่ที่ min(((2^n)+random_number_milliseconds), maximum_backoff) โดย n จะเพิ่มขึ้น 1 สำหรับการวนซ้ำ (คำขอ) แต่ละครั้ง
  • random_number_milliseconds คือจำนวนมิลลิวินาทีแบบสุ่มที่น้อยกว่าหรือ เท่ากับ 1,000 ซึ่งจะช่วยหลีกเลี่ยงกรณีที่ไคลเอ็นต์จำนวนมากซิงค์กันใน บางสถานการณ์และลองอีกครั้งพร้อมกันทั้งหมด ซึ่งจะส่งคำขอเป็นชุดที่ซิงค์กัน ระบบจะคำนวณค่าของ random_number_milliseconds ใหม่หลังจากคำขอ ลองอีกครั้งแต่ละครั้ง
  • maximum_backoff โดยทั่วไปจะยาว 32 หรือ 64 วินาที ค่าที่เหมาะสม ขึ้นอยู่กับกรณีการใช้งาน

ไคลเอ็นต์จะลองอีกครั้งต่อไปได้หลังจากถึงเวลา maximum_backoff การลองใหม่หลังจากจุดนี้ไม่จำเป็นต้องเพิ่มเวลา Backoff ต่อไป ตัวอย่างเช่น หากไคลเอ็นต์ใช้maximum_backoffเป็นเวลา 64 วินาที หลังจากถึงค่านี้แล้ว ไคลเอ็นต์จะลองอีกครั้งทุกๆ 64 วินาทีได้ ในบางกรณี ไม่ควรให้ไคลเอ็นต์ลองอีกครั้งอย่างไม่มีกำหนด

เวลาในการรอระหว่างการลองใหม่และจำนวนครั้งที่ลองใหม่จะขึ้นอยู่กับกรณีการใช้งาน และสภาพเครือข่าย

ราคา

การใช้งาน Google ไดรฟ์ API แบบมาตรฐานทั้งหมดจะใช้งานได้โดยไม่มีค่าใช้จ่ายเพิ่มเติม การใช้โควต้าเกิน ขีดจํากัดของคําขอจะทําให้มีการเรียกเก็บเงินจากบัญชีสําหรับการเรียกเก็บเงินใน Google Cloud ในช่วงปลายปี 2026 ดูข้อมูลเพิ่มเติมได้ที่โมเดลมาตรฐานของ Google Workspace สำหรับเครื่องมือและ API ของตัวแทน

ขอเพิ่มโควต้า

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

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

ดูข้อมูลเพิ่มเติมได้ที่แหล่งข้อมูลต่อไปนี้