Google Sheets API paylaşılan bir hizmet olduğundan kotalar ve sınırlamalar uygularız tüm kullanıcılar tarafından adil bir şekilde kullanıldığından emin olmak ve Google Workspace sisteminin sağlığı.
Kota sınırları
Sheets API'de API istekleri için kesin boyut sınırları olmasa da kullanıcılar, E-Tablolar tarafından kontrol edilmeyen farklı işleme bileşenlerinden kaynaklanan sınırlarla karşılaşabilir. Google, istekleri hızlandırmak için maksimum 2 MB'lık bir yük önerir.
Sheets API'nin dakika başına kotaları vardır ve kotalar dakikada bir yenilenir. Örneğin, proje başına dakikada 300 okuma isteği sınırı vardır.
Uygulamanız bir dakikada 350 istek gönderirse ek 50 istek kotayı aşar ve
429: Too many requests
HTTP durum kodu yanıtı. Bu durumda
eksponansiyel geri yükleme algoritması. 1 dakika sonra
uygulayabilir. Kullanıcılar, kota sınırını aşmadıkları sürece aynı anda birden fazla istek gönderebilir.
Tüm E-Tablolar istekleri otomatik olarak uygulanır. Diğer bir deyişle, herhangi bir istek geçerli değilse güncellemenin tamamı başarısız olur ve (potansiyel olarak bağımlı olan) değişikliklerin hiçbiri uygulanmaz.
Aşağıdaki tabloda, istek sınırları ayrıntılı olarak verilmiştir. Dakika başına kotalar dahilinde kalmanız koşuluyla, hiçbir zaman bir gün içinde gönderebileceğiniz istek sayısını sınırlandırmalısınız.
Kotalar | |||||
---|---|---|---|---|---|
Okuma istekleri |
|
||||
Yazma istekleri |
|
Dosya sınırlarıyla ilgili ayrıntılar için Google Drive'da depolayabileceğiniz dosyalar başlıklı makaleyi inceleyin.
Zamana dayalı kota hatalarını çözme
Tüm zaman tabanlı hatalar (X dakika başına en fazla N istek) için kodunuz bu istisnayı yakalar ve cihazlar aşırı yük oluşturmaz.
Üstel geri yükleme, ağ uygulamaları için standart bir hata işleme stratejisidir. eksponansiyel geri yükleme algoritması, katlanarak artan bekleme sürelerini kullanarak istekleri yeniden dener maksimum geri yükleme süresine kadar ekleyebilirsiniz. İstekler yine de başarısız olursa, İstek başarılı olana kadar istekler arasındaki gecikmelerin zamanla artması önemlidir.
Örnek algoritma
Üstel geri yükleme algoritması, istekleri katlanarak yeniden dener ve bekleme süresini artırır. maksimum geri yükleme süresine kadar izleyebilirsiniz. Örneğin:
- Google Sheets API'den istekte bulunun.
- İstek başarısız olursa 1 +
random_number_milliseconds
bekleyip tekrar deneyin talep ediyor. - İstek başarısız olursa 2 +
random_number_milliseconds
bekleyip tekrar deneyin talep ediyor. - İstek başarısız olursa 4 +
random_number_milliseconds
bekleyip tekrar deneyin talep ediyor. maximum_backoff
defaya kadar bu şekilde devam edebilirsiniz.- Beklemeye devam edip maksimum yeniden deneme sayısına kadar tekrar deneyin ancak bekleme süresini artırmayın süre, yeniden denemeler arasındaki süre olarak kabul edilir.
Bu örnekte:
- Bekleme süresi
min(((2^n)+random_number_milliseconds), maximum_backoff)
, Her yineleme (istek) için 1 artann
ile. random_number_milliseconds
, şundan küçük rastgele bir milisaniye sayısıdır: eşittir. Bu sayede, çok sayıda istemcinin aynı sunucu tarafından senkronize edildiği ve tüm bunları aynı anda yeniden dener ve istekleri senkronize edilmiş bir şekilde gönderir. dalgalar.random_number_milliseconds
değeri her bir tarihten sonra yeniden hesaplanır yeniden deneme isteğinde bulunun.maximum_backoff
genellikle 32 veya 64 saniyedir. Uygun değer kullanım alanına göre değişir.
İstemci, maximum_backoff
zamanına ulaştıktan sonra yeniden denemeye devam edebilir.
Bu noktadan sonra yapılan yeniden denemelerin, geri yükleme süresini artırmaya devam etmesi gerekmez. Örneğin,
Örneğin, bir müşteri 64 saniyelik maximum_backoff
süresi kullanırsa ve bu süre dolduktan sonra
istemci 64 saniyede bir yeniden deneyebilir. Bir noktada,
istemcinin süresiz olarak yeniden denemesi engellenmelidir.
Yeniden denemeler ile yeniden deneme sayısı arasındaki bekleme süresi, kullanım alanınıza bağlıdır ve ağ koşulları.
Fiyatlandırma
Google Sheets API'nin kullanımı ek ücret ödemeden sunulur. Kotanın aşılması istek sınırları nedeniyle ek ücret alınmaz ve hesabınız faturalandırılmaz.
Kota artışı isteme
Projenizin kaynak kullanımına bağlı olarak kota istemeniz gerekebilir. artırmış olabilir. Bir hizmet hesabı tarafından yapılan API çağrılarının tek hesap olabilir. Artırılmış kotaya başvurmanız onay almayı garanti etmez. Büyük kota artışlarının onaylanması daha uzun sürebilir.
Her projenin kotası aynı değildir. Google Cloud'u gittikçe daha fazla kotalarınızın artması gerekebilir. Yakında önemli bir etkinlik bekliyorsanız büyük çaplı değişiklikler yapmak için kota düzenlemeleri için istekte bulunma Kotalar sayfasından kullanıma sunduk.
Daha fazla bilgi edinmek için aşağıdaki kaynaklara göz atın:
- Kota artışı istekleri hakkında
- Mevcut kota kullanımınızı ve sınırlarınızı görüntüleme
- Kota sınırını yükseltme isteğinde bulunma