Kullanım sınırları

Google Formlar API ortak bir hizmet olduğundan tüm kullanıcılar tarafından adil şekilde kullanıldığından emin olmak ve Google Workspace sisteminin genel durumunu korumak için kotalar ve sınırlamalar uygularız.

Bir kotayı aşarsanız genellikle 429: Too many requests HTTP durum kodu yanıtı alırsınız. Bu durumda üstel geri yükleme algoritması kullanıp daha sonra tekrar denemeniz gerekir. Aşağıdaki dakika başına kotalarını aşmadığınız sürece günlük olarak gönderebileceğiniz istek sayısıyla ilgili bir sınır yoktur.

Not: Form izleme saatlerinde ek sınırlar vardır. Daha fazla bilgi için Push bildirimlerini ayarlama ve alma bölümüne bakın.

İstek sınırları aşağıdaki tabloda ayrıntılı olarak açıklanmıştır:

Kotalar
Okuma istekleri
Proje başına günlük Sınırsız
Proje başına dakika başına 975
Proje başına, kullanıcı başına dakikada 390
Pahalı okuma istekleri

(forms.responses.list istekleri için kullanılır.)

Proje başına günlük Sınırsız
Proje başına dakika başına 450
Proje başına, kullanıcı başına dakikada 180
Yazma istekleri
Proje başına günlük Sınırsız
Proje başına dakika başına 375
Proje başına, kullanıcı başına dakikada 150

Zamana dayalı kota hatalarını çözme

Zamana dayalı tüm hatalar için (X dakikada en fazla N istek) kodunuzun istisnayı yakalamasını ve cihazlarınızın aşırı yük oluşturmaması için kısaltılmış bir üstel geri yükleme kullanmanızı öneririz.

Üstel geri yükleme, ağ uygulamaları için standart bir hata işleme stratejisidir. Üstel geri yükleme algoritması, istekler arasındaki bekleme sürelerini katlanarak artan bir bekleme süresini kullanarak maksimum geri yükleme süresine kadar istekleri yeniden dener. İstekler yine de başarısız olursa istekler arasındaki gecikmelerin zaman içinde istek başarılı olana kadar artması önemlidir.

Örnek algoritma

Üstel geri yükleme algoritması, istekleri katlanarak yeniden dener. Böylece yeniden denemeler arasındaki bekleme süresi, maksimum geri yükleme süresine kadar uzatılır. Örneğin:

  1. Google Formlar API'ye bir istek gönderin.
  2. İstek başarısız olursa 1 + random_number_milliseconds bekleyin ve isteği yeniden deneyin.
  3. İstek başarısız olursa 2 + random_number_milliseconds bekleyin ve isteği yeniden deneyin.
  4. İstek başarısız olursa 4 + random_number_milliseconds bekleyin ve isteği yeniden deneyin.
  5. En fazla maximum_backoff kez olmak üzere benzer şekilde devam edebilirsiniz.
  6. Beklemeye devam edin ve maksimum yeniden deneme sayısına kadar tekrar deneyin. Ancak yeniden denemeler arasındaki bekleme süresini uzatmayın.

Bu örnekte:

  • Bekleme süresi min(((2^n)+random_number_milliseconds), maximum_backoff) şeklindedir ve n her iterasyon (istek) için 1 artar.
  • random_number_milliseconds,1.000'den küçük veya 1.000'e eşit olan rastgele bir milisaniye sayısıdır. Bu, bazı durumlarda çok sayıda istemcinin senkronize edildiği ve tümünün aynı anda yeniden deneme yaptığı durumların önlenmesine yardımcı olur. Böylece, istekleri senkronize dalgalar halinde gönderirsiniz. random_number_milliseconds değeri, her yeniden deneme isteğinden sonra yeniden hesaplanır.
  • maximum_backoff genellikle 32 veya 64 saniyedir. Uygun değer, kullanım alanına bağlıdır.

İstemci, maximum_backoff süresi dolduktan sonra tekrar denemeye devam edebilir. Bu noktadan sonra yapılan yeniden denemelerin, geri yükleme süresini artırmaya devam etmesi gerekmez. Örneğin, bir istemci 64 saniyelik maximum_backoff süresi kullanırsa bu değere ulaştıktan sonra 64 saniyede bir yeniden deneyebilir. Bir noktada, istemcilerin yeniden deneme işlemi süresiz olarak engellenmelidir.

Yeniden denemeler arasındaki bekleme süresi ile yeniden deneme sayısı, kullanım alanınıza ve ağ koşullarınıza bağlıdır.

Fiyatlandırma

Google Formlar API'nin her türlü kullanımı ek ücret olmadan sunulur. Kota isteği sınırları aşıldığında ek ücret alınmaz ve hesabınız faturalandırılmaz.

Kota artışı isteme

Projenizin kaynak kullanımına bağlı olarak kota artışı talep edebilirsiniz. Bir hizmet hesabından yapılan API çağrıları, tek bir hesap kullanıyor olarak kabul edilir. Kota artışı için başvuruda bulunmak onay alacağınız anlamına gelmez. Büyük kota artışlarının onaylanması daha uzun sürebilir.

Her projenin kotası aynı değildir. Google Cloud'u zamanla daha fazla kullandığınız için kotalarınızın artması gerekebilir. Kullanımın önemli oranda artacağını düşünüyorsanız önlem amaçlı olarak Google Cloud Console'daki Kotalar sayfasından kotaların ayarlanmasını isteyebilirsiniz.

Daha fazla bilgi edinmek için aşağıdaki kaynaklara bakın: