我在发送页面速度API的批处理请求时遇到了一些问题。从我在谷歌开发者控制台上看到的情况来看,我每秒应该有100个请求,每天最多25000个。然而,我遇到了一个问题,即使只是尝试每秒50次。我曾试图将计时强加给我的ruby应用程序,但出于某种原因,这并不能改变错误。我仍然从谷歌上得到了相当多的结果。如果这很重要的话,我在包含大约1000个url的数组上做这件事。
这是我的批处理函数,我从另一个函数循环调用它,我认为这可能更适合计时。但这似乎并没有改变任何事情。
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
你知道为什么会发生这种情况吗?提前感谢
我误读了Google Pagespeed的配额——它是100个请求/100秒。所以一秒钟一个请求。我似乎越是检查它实际上是每秒1个请求。我仍然在尝试运行100个请求然后等待100秒时遇到问题。