Limity wykorzystania

Interfejs Google Drive API jest usługą współdzieloną, dlatego stosujemy limity Dbamy o to, aby wszyscy użytkownicy korzystali z niego w sposób równomierny, i aby chronić ogólną wydajność w systemie Google Workspace.

Powiadomienia dostarczane na adres podany podczas otwarcie kanału powiadomień nie wlicza się do limitu. Pamiętaj jednak: połączenia z numerem changes.watch, channels.stop i files.watch metody są zaliczane do do limitu miejsca na dane.

Jeśli przekroczysz limit, otrzymasz 403: User rate limit exceeded Odpowiedź kodu stanu HTTP. Dodatkowe kontrole limitu liczby żądań na stronie Backend Dysku może też wygenerować plik 429: Too many requests . W takim przypadku należy użyć wykładniczego czasu do ponowienia i spróbuj ponownie później. Zakładając, że będziesz w na minutę, nie ma limitu liczby żądań, które możesz przesłać dziennie.

W tabeli poniżej znajdziesz szczegółowe informacje o limitach zapytań:

Limity
Zapytania
Na 60 sekund 12 000
Za 60 sekund na użytkownika 12 000

Rozwiązywanie błędów limitów czasowych

W przypadku wszystkich błędów zależnych od czasu (maksymalnie N żądań na X min) zalecamy kod przechwytuje ten wyjątek i używa obciętego wykładniczego czasu do ponowienia, aby zapewnić urządzenia nie generują nadmiernego obciążenia.

Wykładniczy czas do ponowienia to standardowa strategia obsługi błędów w aplikacjach sieciowych. An algorytm wykładniczego ponowienia ponawia próby żądania, wykorzystując wykładniczo wydłużające się czasy oczekiwania między żądaniami aż do maksymalnego czasu ponowienia. Jeśli żądania nadal nie zostaną zrealizowane, ważne, że opóźnienia między prośbami zwiększają się z czasem do momentu, gdy żądanie zostanie rozpatrzone pozytywnie.

Przykładowy algorytm

Wykładniczy algorytm do ponawiania wielokrotnie ponawia próby żądania, zwiększając czas oczekiwania. między ponownymi próbami aż do maksymalnego czasu ponowienia. Na przykład:

  1. Wyślij żądanie do Google Drive API.
  2. Jeśli żądanie się nie powiedzie, poczekaj 1 + random_number_milliseconds i spróbuj ponownie do ich przesłania.
  3. Jeśli żądanie się nie powiedzie, poczekaj 2 + random_number_milliseconds i spróbuj ponownie do ich przesłania.
  4. Jeśli żądanie się nie powiedzie, poczekaj 4 + random_number_milliseconds i spróbuj ponownie do ich przesłania.
  5. I tak dalej, maksymalnie maximum_backoff raz.
  6. Zaczekaj i ponawiaj próby aż do określonej maksymalnej liczby 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), z wartością n przyrostową o 1 dla każdej iteracji (żądania).
  • random_number_milliseconds jest losową liczbą milisekund mniejszą niż lub równy 1000. Pozwala to uniknąć przypadków, w których wiele klientów jest zsynchronizowanych przez w jakiejś sytuacji i spróbuje ponownie jednocześnie wysyłać żądania fale. Wartość funkcji random_number_milliseconds jest obliczana ponownie po każdej spróbuj jeszcze raz.
  • maximum_backoff zwykle trwa 32 lub 64 sekundy. Odpowiednia wartość zależy od przypadku użycia.

Klient może ponawiać próby po osiągnięciu maximum_backoff czasu. Ponowne próby po tym punkcie nie muszą przez cały czas wydłużać czasu do ponowienia. Dla: np. jeśli klient używa czasu maximum_backoff wynoszącego 64 sekundy, a następnie po osiągnięciu tę wartość, klient może ponawiać próby co 64 sekundy. W pewnym momencie nie powinno się uniemożliwić ponawianiu prób w nieskończoność.

Czas oczekiwania między ponownymi próbami a liczba ponownych prób zależy od konkretnego przypadku użycia i stanu sieci.

Ceny

Z interfejsu Google Drive API można korzystać bez dodatkowych opłat. Przekroczenie limitu nie wiąże się z dodatkowymi opłatami, a Twoje konto nie jest obciążane.

Poproś o zwiększenie limitu

W zależności od wykorzystania zasobów projektu możesz poprosić o zwiększenie limitu wzrost. Uznaje się, że wywołania interfejsu API przez konto usługi korzystają z metody jedno konto. Zgłoszenie prośby o zwiększenie limitu nie gwarantuje jego zatwierdzenia. Duże Zatwierdzenie zwiększenia limitu może potrwać dłużej.

Nie wszystkie projekty mają takie same limity. Ponieważ coraz częściej korzystasz z Google Cloud w ramach limity czasu mogą wymagać zwiększenia limitu. Jeśli spodziewasz się w nadchodzącym okresie wzrost wykorzystania, możesz proaktywnie poproś o korektę limitu na stronie Limity w konsoli Google Cloud.

Więcej informacji znajdziesz w tych materiałach: