2016-07-27 8 views
0

pagespeed APIのバッチリクエストを送信する際に問題があります。 Googleのデベロッパーコンソールで見たことから、毎秒100件のリクエストがあり、1日あたり最大25,000件必要です。しかし、私は毎秒50をやろうとしても問題に遭遇しています。私は私のルビーアプリケーションにタイミングを課そうとしましたが、何らかの理由でエラーを変更しません。私はまだ結果のまともな量でgoogleからrateLimitExceededエラーを取得します。私が〜1000のURLを含む配列でこれをやっています。Google APIのバッチリクエストが1秒に1回発生するようにします。

ここに私のバッチ関数があります。別の関数のループで呼び出していますが、これはタイミングがうまくいくと思っていました。しかし、それは何も変えていないようです。

def send_request(urls) 
    @psservice.batch do |ps| 
    urls.each do |url| 
     ps.run_pagespeed(url) do |result, err| 
     err.nil? ? @data.push(result) : @errors.push("#{url}, #{err}") 
     end 
    end 
    end 
end 

これは

@urls.each_slice(50).to_a.each do |url_list| 
    send_request(url_list, options) 
    sleep(1) 
end 

これが発生する理由を任意のアイデアから呼び出されますか?事前に感謝します

答えて

0

私はGoogle Pagespeedのクォータを誤解しました。これは100回のリクエスト/ 100秒です。だから1秒間リクエストする。それは実際には1リクエスト/秒であることを確認するほどです。私はまだ100の要求を実行しようとすると100秒待つのに困っています。

関連する問題