Limity wykorzystania

Ograniczenia i limity chronią infrastrukturę Google przed automatycznym procesem, który korzysta z interfejsu Alert Center API w niewłaściwy sposób. Nadmierna liczba żądań z interfejsu API może wynikać z nieszkodliwego literówki lub nieskutecznie zaprojektowanego systemu, 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ólnego stanu systemu Google Workspace. Dzięki temu działania danego dewelopera nie wpływają negatywnie na całą społeczność.

W mało prawdopodobnym przypadku niepowodzenia żądania do interfejsu API otrzymasz odpowiedź z kodem stanu HTTP. Kod stanu 403 zawiera informacje o błędach dotyczących nieprawidłowych danych wejściowych, a kod stanu HTTP 503 – informacje o błędzie wskazujące, które limity interfejsu API zostały przekroczone. Dzięki tym odpowiedziom Twoja aplikacja może wykryć te błędy i podjąć odpowiednie działania.

Jeśli żądania muszą zostać wykonane w ustalonym czasie, wysyłaj je równolegle lub korzystaj z wielu wątków w aplikacji w języku Java lub C#. Przykładem żądań równoległych jest wysyłanie próśb o przesyłanie małych grup 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 spróbuj zacząć od 10 wątków – po jednym na adres e-mail użytkownika. Pamiętaj, że rekomendacja wątków ma swoje wady i nie jest przydatna w niektórych sytuacjach związanych z interfejsem API. Jeśli liczba żądań będzie zbyt duża, wystąpią błędy limitu.

W przypadku wszystkich błędów opartych na czasie (maksymalnie N s przez N s na wątek), zwłaszcza błędów kodu stanu 503 zalecamy wychwycenie wyjątku i za pomocą algorytmu wykładniczego ponowienia poczekać z niewielkim opóźnieniem, zanim spróbujesz ponownie wykonać nieudane wywołanie. Przykładem interfejsu Alert Center API w przypadku 1 wątku jest odczekanie 5 sekund i ponowienie nieudanego wywołania. Jeśli żądanie zostanie zrealizowane, powtórz ten wzorzec w przypadku innych wątków. Jeśli drugie żądanie nie powiedzie się, aplikacja powinna ograniczyć częstotliwość do tego żądania. Możesz na przykład zwiększyć początkowe 5-sekundowe opóźnienie do 10 sekund i ponownie spróbować wykonać nieudane połączenie. Ustal też limit ponownych prób. Na przykład ponów próbę 5–7 razy z różnymi czasami opóźnienia, zanim aplikacja zwróci użytkownikowi błąd.

Kategorie limitów interfejsu API Limity
Częstotliwość zapytań na sekundę i QPD w Centrum alertów Interfejs API ogranicza liczbę żądań dla projektu w Konsoli interfejsów API. Maksymalna liczba żądań na sekundę w projekcie interfejsu API (QPS) to 1000. Maksymalna liczba żądań na użytkownika na sekundę (QPS) to 150.

Po przekroczeniu tych limitów serwer zwraca kod stanu HTTP 503. Gdy ponawiasz żądania, używaj algorytmu wykładniczego ponowienia.

Inne typy limitów Ograniczenia i wytyczne
Format danych, domyślny Domyślny format danych to JSON.
Nieautoryzowane żądania Google nie zezwala na nieautoryzowane żądania wysyłane do tego interfejsu API. Jeśli nie podano tokena autoryzacji, żądanie jest uznawane za nieautoryzowane. Więcej informacji znajdziesz w artykule Autoryzacja próśb.

Poproś o zwiększenie limitu na projekt

W zależności od wykorzystania zasobów w projekcie możesz poprosić o zwiększenie limitu. Wywołania interfejsu API przez konto usługi są uznawane za korzystające z jednego konta. Prośba o zwiększenie limitu nie gwarantuje jego zatwierdzenia. Zatwierdzenie dużego zwiększenia limitu może potrwać dłużej.

Nie wszystkie projekty mają takie same limity. Z czasem będziesz korzystać z Google Cloud w miarę zwiększania limitów. Jeśli spodziewasz się znacznego wzrostu wykorzystania, możesz z wyprzedzeniem poprosić o korektę limitów na stronie Limity w konsoli Google Cloud.

Więcej informacji znajdziesz w tych materiałach: