Interfejs Google Meet API typu REST jest usługą współużytkowaną, dlatego stosujemy limity, aby mieć pewność, że wszyscy użytkownicy mogą z niego korzystać, a także aby chronić ogólną wydajność systemu Google Workspace.
Po przekroczeniu limitu otrzymasz zwykle odpowiedź z kodem stanu HTTP 429: Too many requests
. W takim przypadku użyj algorytmu wykładniczego do ponowienia i spróbuj ponownie później. Jeśli zmieścisz się w limicie na minutę, nie będzie limitu liczby żądań, które możesz przesłać w ciągu dnia.
Limity zapytań znajdziesz w poniższej tabeli:
Limity | |||||
---|---|---|---|---|---|
Żądania odczytu |
|
||||
Żądania zapisu |
|
||||
Ograniczona liczba żądań zapisu
(Używane w przypadku |
|
Napraw błędy limitu czasu
W przypadku wszystkich błędów czasowych (maksymalnie N żądań na X minut) zalecamy, aby Twój kod wyłapał wyjątek i używał skróconego wykładniczego ponowienia, aby urządzenia nie wygenerowały nadmiernego obciążenia.
Ponawianie wykładnicze to standardowa strategia obsługi błędów w aplikacjach sieciowych. Algorytm wykładniczego ponowienia ponawia próbę wykonania żądań, wykorzystując wykładniczo wydłużające się czasy oczekiwania między żądaniami, aż do osiągnięcia maksymalnego czasu do ponowienia. Jeśli żądania wciąż nie są realizowane, ważne jest, aby opóźnienia między żądaniami wzrastały w miarę upływu czasu do momentu ich rozpatrzenia.
Przykładowy algorytm
Algorytm wykładniczego ponawiania powoduje wykładnicze ponawianie żądań, wydłużając czas oczekiwania między kolejnymi próbami aż do osiągnięcia maksymalnego czasu do ponowienia. Na przykład:
- Wyślij żądanie do interfejsu Google Meet API.
- Jeśli żądanie się nie powiedzie, poczekaj 1 +
random_number_milliseconds
i spróbuj ponownie. - Jeśli żądanie się nie powiedzie, poczekaj 2 +
random_number_milliseconds
i spróbuj ponownie. - Jeśli żądanie się nie powiedzie, poczekaj 4 +
random_number_milliseconds
i spróbuj ponownie. - I tak dalej, nawet do
maximum_backoff
raz. - Zaczekaj chwilę i ponów próbę, aż do osiągnięcia maksymalnej liczby ponownych prób, ale nie wydłużaj czasu oczekiwania między kolejnymi próbami.
gdzie:
- Czas oczekiwania wynosi
min(((2^n)+random_number_milliseconds), maximum_backoff)
, gdzie wartość w kolumnien
zwiększa się o 1 dla każdej iteracji (żądania). random_number_milliseconds
to losowa liczba milisekund,która jest mniejsza lub równa 1000. Pomaga to uniknąć przypadków, w których wiele klientów jest zsynchronizowanych w pewnej sytuacji i wszystkie są ponawiane jednocześnie, wysyłając żądania falami zsynchronizowanymi. Wartośćrandom_number_milliseconds
jest ponownie obliczana po każdym ponownym żądaniu.maximum_backoff
to zwykle 32 lub 64 sekundy. Odpowiednia wartość zależy od konkretnego przypadku użycia.
Klient może kontynuować ponawianie próby po osiągnięciu maximum_backoff
raza.
Ponowne próby po tym punkcie nie muszą wydłużać czasu do ponowienia. Jeśli na przykład klient używa czasu maximum_backoff
wynoszącego 64 sekundy, po osiągnięciu tej wartości może ponawiać próbę co 64 sekundy. W pewnym momencie klienty powinny utracić możliwość ponawiania próby w nieskończoność.
Czas oczekiwania między kolejnymi próbami a liczbą ponownych prób zależy od konkretnego przypadku użycia i warunków w sieci.
Ceny
Korzystanie z interfejsu Google Meet API jest możliwe bez dodatkowych opłat. Przekroczenie limitu żądań w ramach limitu nie wiąże się z dodatkowymi opłatami, a konto nie jest obciążane.
Poproś o zwiększenie limitu
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:
- Prośby o zwiększenie limitu
- Wyświetlanie bieżącego wykorzystania limitów i limitów
- Wysyłanie prośby o zwiększenie limitu