我们的Google表格插件为用户提供了扩展的功能库。
问题是,每个函数都运行UrlFetch。因此,如果用户向下拖动列> 100次,他们可能会看到错误:“错误:服务在短时间内调用了太多次:urlfetch”。
显然,常见的解决方案是在UrlFetch函数之前添加一个随机位睡眠(例如https://productforums.google.com/forum/#!topic/docs/_lgg9hbU6k8)。但是没有其他方法可以解决这个问题吗?在使用随机睡眠测试后,我可能会一次将限制增加到200个函数,最大值
潜在的问题是我不知道实际上是什么限制。例如,是否有>在Google的队列中一次有100个UrlFetch请求速率限制?我试图真正理解我们的选择是什么,但是甚至没有完全得到限制!
非常感谢您的帮助,特别是如果您是来自Google的人员:)。
答案 0 :(得分:2)
你问题的答案"是什么时候">在Google的队列中一次100个UrlFetch请求,以确定速率限制?"基本上没有。限制不是100次通话。
如果满足以下条件之一,您将看到该错误("错误:服务在短时间内调用了太多次:urlfetch")
在您的情况下,听起来您在达到每日最大数据或每日通话最大值之前会收到错误消息,因此它可能是每分钟数据条件:每分钟通过urlfetch发送或接收22 MB。 / p>
你可以不断检查你通过urlfetch处理的字节数并使用它,如果它接近极限,让函数休眠一分钟。但是,这有点烦人。
您可能需要考虑尝试提高功能效率,以减少数据发送次数或减少调用次数。 如何执行此操作取决于功能,我们需要查看代码以在那里提出具体建议。
您可以在此处找到Google的配额:https://cloud.google.com/appengine/docs/quotas#UrlFetch