Google Drive API, paylaşılan bir hizmet olduğundan tüm kullanıcılar tarafından adil bir şekilde kullanılmasını sağlamak ve Google Workspace sisteminin genel performansını korumak için kotalar ve sınırlamalar uygularız.
Bildirim kanalı açılırken belirtilen adrese gönderilen bildirimler, kota sınırlarınıza dahil edilmez. Ancak changes.watch
, channels.stop
ve files.watch
yöntemlerine yapılan çağrılar kotanıza dahil edilir.
Bir kotayı aşarsanız 403: User rate limit
exceeded
HTTP durum kodu yanıtı alırsınız. Drive arka ucunda ek sıklık sınırı kontrolleri de 429: Too many
requests
yanıtı oluşturabilir. Bu durumda eksponansiyel geri yükleme algoritması kullanıp daha sonra tekrar denemelisiniz. Aşağıdaki dakikadaki kota sınırları içinde kaldığınız sürece, günlük istek sayınız sınırsızdır.
Aşağıdaki tabloda sorgu sınırları ayrıntılı olarak açıklanmıştır:
Kotalar | |||||
---|---|---|---|---|---|
Sorgular |
|
Zamana dayalı kota hatalarını düzeltme
Zamana dayalı tüm hatalar (X dakika başına en fazla N istek) için kodunuzun istisnayı yakalamasını ve cihazlarınızın aşırı yük oluşturmadığından emin olmak için kısaltılmış üstel geri çekilme kullanmasını öneririz.
Üstel geri alma, ağ uygulamaları için standart bir hata işleme stratejisidir. Eksponansiyel geri yükleme algoritması, istekler arasındaki bekleme sürelerini üstel olarak artırarak istekleri yeniden dener. Maksimum geri yükleme süresine kadar bu işlem devam eder. İstekler hâlâ başarısız oluyorsa istek başarılı olana kadar istekler arasındaki gecikmelerin zaman içinde artması önemlidir.
Örnek algoritma
Eksponansiyel geri yükleme algoritması, istekleri eksponansiyel olarak yeniden dener ve yeniden denemeler arasındaki bekleme süresini maksimum geri yükleme süresine kadar artırır. Örneğin:
- Google Drive API'ye istek gönderin.
- İstek başarısız olursa 1 +
random_number_milliseconds
saniye bekleyin ve isteği yeniden deneyin. - İstek başarısız olursa 2 +
random_number_milliseconds
saniye bekleyip isteği yeniden deneyin. - İstek başarısız olursa 4 +
random_number_milliseconds
bekleyin ve isteği yeniden deneyin. - Bu işlem
maximum_backoff
kez tekrarlanabilir. - Maksimum deneme sayısına ulaşana kadar beklemeye ve yeniden denemeye devam edin ancak yeniden denemeler arasındaki bekleme süresini artırmayın.
Bu örnekte:
- Bekleme süresi
min(((2^n)+random_number_milliseconds), maximum_backoff)
'dır. Her yineleme (istek) içinn
değeri 1 artırılır. random_number_milliseconds
,1.000'den küçük veya 1.000'e eşit rastgele bir milisaniye sayısıdır. Bu sayede, birçok istemcinin belirli bir durum nedeniyle senkronize olup aynı anda yeniden denediği ve senkronize dalgalar halinde istek gönderdiği durumlar önlenir.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
kez denedikten sonra yeniden denemeye devam edebilir.
Bu noktadan sonraki yeniden denemelerde geri çekilme süresinin artırılması gerekmez. Örneğin, bir istemci 64 saniyelik bir maximum_backoff
kullanıyorsa bu değere ulaştıktan sonra istemci her 64 saniyede bir yeniden deneyebilir. Bir noktada, istemcilerin süresiz olarak yeniden denemesi engellenmelidir.
Yeniden denemeler arasındaki bekleme süresi ve yeniden deneme sayısı, kullanım alanınıza ve ağ koşullarına bağlıdır.
Fiyatlandırma
Google Drive API'nin her türlü kullanımı ücretsizdir. Kota isteği sınırlarının aşılması ek ücrete neden olmaz ve hesabınıza fatura gönderilmez.
Kota artışı isteme
Projenizin kaynak kullanımına bağlı olarak kota ayarlaması isteğinde bulunabilirsiniz. Bir hizmet hesabı tarafından yapılan API çağrıları, tek bir hesap kullanılıyormuş gibi değerlendirilir. Ayarlanmış kota başvurusunda bulunmak onay alacağınıza dair bir garanti teşkil etmez. Kota değerini önemli ölçüde artıracak kota ayarlama isteklerinin onaylanması daha uzun sürebilir.
Her projenin kotası aynı değildir. Google Cloud'u zaman içinde daha fazla kullandıkça kota değerlerinizin artırılması gerekebilir. Kullanımın önemli oranda artacağını düşünüyorsanız Google Cloud Console'daki Kotalar sayfasından önlem amaçlı olarak kota ayarlamaları isteyebilirsiniz.
Daha fazla bilgi edinmek için aşağıdaki kaynaklara göz atın:
- Kota ayarlamaları hakkında
- Mevcut kota kullanımınızı ve sınırlarınızı görüntüleme
- Daha yüksek bir kota sınırı isteğinde bulunma