2013-07-21 16 views
16

Google url kısaltıcı API'sini kullanarak, yükü test etmeye başladığım kadar iyi çalışıyordu. API'yi kullanmaya başladım ve günde 1.000.000 isabetle birlikte gelsem de, hızlı bir şekilde 403 Hız Sınırını aştı. Google raporlama aracında gelen istekleri görebilirim ve her şey için 403'leri geri gönderiyorlar. 403'ler API'ye yaklaşık 345/350 isabetle geri dönmeye başladı, saatlerce devam ediyor.Google URL Kısaltıcı 403 Hız Sınırı Aşıldı

Düşünceler?

+0

Aynı IP numarasından gelen tüm istekleri mi yapıyorsunuz? –

cevap

-5

Sen google kısaltıcı uzantısı gitmek gerekir ve seçeneğinde saniyede/1 isteğine 'Ulaşım Hakkı'

+2

Bu soru google chrome uzantısını sormuyor, ancak API aracılığıyla hizmeti tüketme ve oran sınırlarına girme ile ilgili. – timbrown

7

API sınırları istekleri seçmek/kullanıcı başına.

Bir kullanıcı benzersiz bir IP adresi olarak tanımlanır.

Eğer yük testlerinizi tek bir IP adresinden yapıyor olsaydınız, bu oran limitiniz sorununa neden olur.

https://developers.google.com/analytics/devguides/reporting/mcf/v3/limits-quotas#general_api

+0

Bu bir yerde belgelenmiş mi? Günlük 1.000.000 sınırının ötesinde hiçbir bilgi bulamadım. Kullanıcıların API'mizi çok sayıda istekle karşıladığında bu sorunu yaşıyorum: '1 istek/sn/kullanıcı başına' sınırını aşmış görünüyor – timbrown

+2

https://developers.google.com/analytics/devguides/reporting/ mcf/v3/limitler-kotalar # general_api – Chausser

+0

Bunun için teşekkürler. Oran alıntılarını ~ KULLANICI SINIRI 1 istekleri/ikinci/kullanıcı ~ olarak değiştirebilir gibi görünüyor, ancak kaydetmeye çalışırken 500 hata atıyor. Bunu 10/sn/kullanıcıya yükseltmek için bir şey eksik miyim? – timbrown

-8

, Uzatma simgesine sağ tıklayın Options gidip altındaki Erişim İzni tıklayın.

1

"1 istek/saniye başına/kullanıcı başına" düşünmüyorum. benim durumumda veya google url kısaltıcı vakasında doc'da yazıldığı gibi% 100 doğrudur. (FYI: "OAuth" değil "Public API erişimi kullanıyorum")

Hemen hemen aynı sorunum var ama benim için daha büyük olasılıkla "Bu hata bazı URL'ler için bazı URL'ler için alıyorum" zamanlar." Bu ne demek? Lütfen okumaya devam et.

Bunlar

ne buldum şunlardır:

  • Aynı anda google url kısaltıcı kullanmak 10 konuları kullanabilirsiniz ancak her zaman değil ... işleme, hatta bir url birinde başarısız olan
  • iş parçacığı, diğer iş parçacıkları hala diğer URL'leri alabilir.
  • bir url başarısız olduğunda ve daha sonra aynı URL'yi tekrar denedim (hatta başka bir işlem çalışmıyor, hala bazı ZAMAN DÖNEMİ için çalışmaz. Hatta daha fazla dize eklemeye çalıştım) "& test = 1" , bu yardımcı olmaz. Ama başka bir url değişirse, işe yarıyor.

Yani, google'ın sunucu her url'nin önbelleğe sahip olabileceğini tahmin ediyorum. bir url başarısız olursa, bir beklemelisiniz .

    0: önbellek serbest izin ederken

    Yani, benim sorunu çözmek için bu gibi bazı ürpertici kod yazmak zorunda Bir orada başarısız olduğunda

  • , söz konusu iplik

(Bir URL başarısız için 10 dakika olabilir, bu nedenle tamamen) 1 dakika (evet 1 dakika)

  • uyku ve 10 kez denemeye devam edecektir Ancak, bu tüyler ürpertici kod benim durumum için iyi çünkü ben 10 tane sabit-iş parçacığı havuzu boyutu ile ExecutorService kullanıyorum. Yani, bir başarısızlık varsa, diğerleri hala kısaltılmış URL'leri alabilirsiniz. Sorunu çözüyor ... en azından benim için.

  • +0

    , çoklu iş parçacığı kullandığınızdan beri, kullanıcı başına 1 istek/saniyede bakım yapmak mümkündür. –

    +0

    @ManojRamanan'ın ortaya çıkmasıyla daha eşzamanlı bir istek olacağı için, ben bunu sürdürmedim. Açıklamam size, kullanıcı başına 1 istek/saniyeden fazla kullanabileceğinizi bildirmeye çalıştı. –

    İlgili konular