Limity wykorzystania

Limity i kwoty chronią infrastrukturę Google przed zautomatyzowanymi procesami, które wykorzystują interfejs Alert Center API w nieodpowiedni sposób. Nadmierna liczba żądań z interfejsu API może być spowodowana nieszkodliwą literówką lub nieefektywnie zaprojektowanym systemem, który wykonuje niepotrzebne wywołania interfejsu API. Niezależnie od przyczyny blokowanie ruchu z określonego źródła po osiągnięciu określonego poziomu jest niezbędne dla ogólnej kondycji systemu Google Workspace. Dzięki temu działania jednego dewelopera nie mogą negatywnie wpłynąć na większą społeczność.

W mało prawdopodobnym przypadku niepowodzenia żądania interfejsu API otrzymasz kod stanu HTTP. Kod stanu 403 zawiera informacje o błędnych danych wejściowych, a kod stanu HTTP 503 zawiera informacje o błędach wskazujące, które limity interfejsu API zostały przekroczone. Te odpowiedzi umożliwiają aplikacji niestandardowej wykrywanie błędów i podejmowanie odpowiednich działań.

Jeśli Twoje żądania muszą zostać zrealizowane w określonym czasie, wysyłaj je równolegle lub używaj wielu wątków w aplikacji w języku Java lub C#. Przykładem żądań równoległych jest wysyłanie próśb o małe partie e-maili od różnych użytkowników zamiast dodawania lub usuwania wielu e-maili od jednego użytkownika jednocześnie. W przypadku wątków zacznij od 10 wątków, po jednym na adres e-mail użytkownika. Pamiętaj, że zalecenie dotyczące wątków ma swoje wady i nie jest przydatne we wszystkich sytuacjach związanych z interfejsem API. Jeśli liczba żądań będzie zbyt duża, wystąpią błędy związane z limitem.

W przypadku wszystkich błędów związanych z czasem (maksymalnie N elementów przez N sekund na wątek), zwłaszcza błędów z kodem stanu 503, zalecamy, aby kod przechwytywał wyjątek i za pomocą algorytmu wykładniczego wycofywania odczekiwał krótką chwilę przed ponowną próbą wykonania nieudanego wywołania. Przykładem użycia interfejsu Alert Center API w przypadku jednego wątku jest odczekanie 5 sekund i ponowienie nieudanego wywołania. Jeśli żądanie zostało wykonane, powtórz ten wzorzec w przypadku pozostałych wątków. Jeśli druga prośba nie zostanie zrealizowana, aplikacja powinna zmniejszyć częstotliwość wysyłania próśb, dopóki nie zostanie zrealizowana. Możesz na przykład wydłużyć początkowe 5-sekundowe opóźnienie do 10 sekund i ponownie spróbować wykonać połączenie, które się nie powiodło. Określ też limit ponownych prób. Na przykład ponów żądanie 5–7 razy z różnymi czasami opóźnienia, zanim aplikacja zwróci użytkownikowi błąd.

Kategorie limitów interfejsu API Limity
Limity QPS i QPD w Centrum alertów Interfejs API ogranicza liczbę żądań w projekcie konsoli interfejsów API. Maksymalna liczba żądań na sekundę w projekcie API (QPS projektu) wynosi 1000. Maksymalna liczba żądań na sekundę na użytkownika (QPS użytkownika) wynosi 150.

Jeśli te limity zostaną przekroczone, serwer zwróci kod stanu HTTP 503. Podczas ponawiania żądań używaj algorytmu odczekiwania wykładniczego.

Inne rodzaje limitów Ograniczenia i wytyczne
Format danych, domyślny Domyślny format danych to JSON.
Nieautoryzowane żądania Google nie zezwala na nieautoryzowane żądania do tego interfejsu API. Żądanie jest uznawane za nieautoryzowane, jeśli nie podano tokena autoryzacji. Więcej informacji znajdziesz w artykule Autoryzowanie żądań.

Prośba o zwiększenie limitu dla projektu

W zależności od wykorzystania zasobów w projekcie możesz poprosić o dostosowanie limitu. Wywołania interfejsu API przez konto usługi są traktowane jako korzystanie z jednego konta. Wysłanie wniosku o zmianę limitu nie gwarantuje jego zatwierdzenia. Zatwierdzenie próśb o dostosowanie limitu, które znacznie zwiększają jego wartość, może potrwać dłużej.

Nie wszystkie projekty mają takie same limity. W miarę upływu czasu i zwiększania wykorzystania Google Cloud wartości limitów mogą wymagać zwiększenia. Jeśli spodziewasz się znacznego wzrostu wykorzystania, możesz z wyprzedzeniem poprosić o zmianę limitów na stronie Limity w konsoli Google Cloud.

Więcej informacji znajdziesz w tych materiałach: