Google Vault API הוא שירות משותף, ולכן אנחנו מחילים מכסות והגבלות כדי לוודא שהשימוש בו הוגן לכל המשתמשים וכדי לשמור על התקינות הכוללת של מערכת Google Workspace.
הגבלות על מוצרים
לא ניתן לבצע יותר מ-20 פעולות ייצוא בארגון.
מכסות של בקשות API
לכל ארגון יש הרשאה ל-600 קריאות עניינים בדקה, מכל הפרויקטים והמשתמשים, כולל בקשות דרך Vault API ו-Vault.google.com.
בטבלאות הבאות מפורטות המגבלות של הבקשות לדקה לכל פרויקט:
קריאת בקשות בדקה לכל פרויקט | |
---|---|
ייצוא, עניין ושמירה של שאילתה | 120 |
השהיה | 228 |
פעולה ממושכת | 300 |
כתיבת בקשות בדקה לכל פרויקט | |
---|---|
ייצוא | 20 |
השהיה | 60 |
הרשאות בתקן Matter | 30 |
תקן Matter | 60 |
שאילתה שמורה | 45 |
חיפוש (ספירה) של בקשות לדקה לכל פרויקט | |
---|---|
ספירת חיפושים | 20 |
מכסת שימוש לפי שיטה
המכסה שבקשה משתמשת בה תלויה בשיטה שנקראת. בטבלה הבאה מפורטים השימוש במכסות לכל שיטה:
שיטה | עלויות המכסה |
---|---|
matters.close matters.create matters.delete matters.reopen matters.update matters.undelete
|
קריאה של עניין אחד כתיבה של עניין אחד |
matters.count |
ספירה אחת |
matters.get |
עניין אחד נקרא |
matters.list |
נקראו 10 עניינים |
matters.addPermissions matters.removePermissions
|
קריאה של עניין אחד כתיבה של עניין אחד כתיבה של עניין אחד |
matters.exports.create |
קריאה אחת של ייצוא 10 פעולות ייצוא נכתבו |
matters.exports.delete |
כתיבה של אירוע ייצוא אחד |
matters.exports.get |
קריאה של ייצוא אחד |
matters.exports.list |
5 קריאות לפעולות ייצוא |
matters.holds.addHeldAccounts matters.holds.create matters.holds.delete matters.holds.removeHeldAccounts matters.holds.update
|
קריאה של עניין אחד כתיבה של עניין אחד קריאה אחת של החזקה אחת כתיבה אחת של החזקה |
matters.holds.list |
קריאה של עניין אחד 3 קריאות בהחזקה |
matters.holds.accounts.create matters.holds.accounts.delete matters.holds.accounts.list
|
קריאה של עניין אחד כתיבה של עניין אחד קריאה אחת של החזקה אחת כתיבה אחת של החזקה |
matters.savedQueries.create matters.savedQueries.delete
|
קריאה של עניין אחד כתיבה של עניין אחד קריאה של שאילתה שמורה אחת כתיבת שאילתה שמורה אחת |
matters.savedQueries.get |
עניין אחד נקרא שאילתה שמורה אחת נקראה |
matters.savedQueries.list |
קריאה של עניין אחד 3 שאילתות שמורות שנקראו |
operations.get |
קריאה של פעולה ממושכת אחת |
פתרון שגיאות במכסות מבוססות-זמן
אם חורגים מהמכסה לדקה או לארגון, בדרך כלל מקבלים קוד סטטוס HTTP מסוג 429: Too many requests
.
בכל השגיאות שמבוססות על זמן (לכל היותר N בקשות ב-X דקות), מומלץ שהקוד יתפוס את החריגה וישתמש בהשהיה מעריכית קטועה כדי לוודא שהמכשירים לא ייצרו עומס יתר.
השהיה מעריכית היא אסטרטגיה סטנדרטית לטיפול בשגיאות עבור אפליקציות רשת. אלגוריתם מעריכי של השהיה לפני ניסיון חוזר לבצע בקשות על ידי הגדלה אקספוננציאלית של זמני המתנה בין בקשות, עד לזמן השהייה המרבי. אם הבקשות עדיין נדחות, חשוב שמשך הזמן בין הבקשות יתארך עם הזמן עד שהבקשה תאושר.
אלגוריתם לדוגמה
אלגוריתם של השהיה מעריכית מנסה לבצע שוב בקשות באופן אקספוננציאלי. כך, זמן ההמתנה בין ניסיונות חוזרים גדל עד לזמן ההשהייה המקסימלי. לדוגמה:
- יש לשלוח בקשה ל-Google Vault API.
- אם הבקשה נכשלת, יש להמתין 1 +
random_number_milliseconds
ולנסות שוב לבצע את הבקשה. - אם הבקשה נכשלה, ממתינים 2 +
random_number_milliseconds
ומנסים שוב לבצע את הבקשה. - אם הבקשה נכשלת, יש להמתין 4 +
random_number_milliseconds
ולנסות שוב לבצע את הבקשה. - וכך הלאה, עד פעם אחת (
maximum_backoff
). - אפשר להמשיך להמתין ולנסות שוב עד למספר המקסימלי של ניסיונות חוזרים, אבל לא כדאי להאריך את תקופת ההמתנה בין הניסיונות החוזרים.
איפה:
- זמן ההמתנה הוא
min(((2^n)+random_number_milliseconds), maximum_backoff)
, כאשר הערך שלn
עולה ב-1 לכל איטרציה (בקשה). random_number_milliseconds
הוא מספר אקראי של אלפיות השנייה שקטן מ-1,000 או שווה לו. כך ניתן למנוע מקרים שבהם לקוחות רבים מסונכרנים במצבים מסוימים, וכולם מנסים שוב בבת אחת, ושולחים בקשות בפרסומי wave מסונכרנים. הערך שלrandom_number_milliseconds
מחושב מחדש אחרי כל בקשה לניסיון חוזר.- משך הזמן של
maximum_backoff
הוא בדרך כלל 32 או 64 שניות. הערך המתאים תלוי בתרחיש לדוגמה.
הלקוח יוכל להמשיך לנסות שוב אחרי שיגיע הזמן ה-maximum_backoff
.
ניסיונות חוזרים אחרי הנקודה הזו לא צריכים להאריך את זמן ההשהיה. לדוגמה, אם לקוח משתמש בזמן maximum_backoff
של 64 שניות, לאחר שהוא מגיע
לערך הזה, הלקוח יכול לנסות שוב כל 64 שניות. בשלב כלשהו,
ניתן למנוע מלקוחות לנסות שוב ללא הגבלת זמן.
משך ההמתנה בין הניסיונות החוזרים למספר הניסיונות החוזרים תלוי בתרחיש לדוגמה ובתנאי הרשת.
איך שולחים בקשה להגדלת מכסה
יכול להיות שתרצו לבקש הגדלה של המכסה, בהתאם לשימוש במשאבים בפרויקט. קריאות ל-API דרך חשבון שירות נחשבות לשימוש בחשבון יחיד. הגשת בקשה להגדלת מכסה לא מבטיחה אישור. אישור של הגדלות מכסות עשוי להימשך זמן רב יותר.
לא לכל הפרויקטים יש את אותן מכסות. ככל שהשימוש ב-Google Cloud הולך וגדל, יכול להיות שתצטרכו להגדיל את המכסות שלכם. אם צפויה עלייה משמעותית בשימוש, אתם יכולים לבקש התאמות של המכסות באופן יזום דרך הדף Quotas במסוף Google Cloud.
מידע נוסף זמין במקורות המידע הבאים:
תמחור
כל שימוש ב-Google Vault API זמין ללקוחות Google Workspace ללא עלות נוספת.