我对的截止日期超过了错误有一些问题。基本上,我正在使用机械在URL中进行一些URL抓取。所以当尝试执行
br.open(url)
我有这个错误
HTTPException:等待来自url的HTTP : my-url的截止日期超过了
我读过文档,它说要使用后端(我使用的是一个带有5个实例的动态后端B4_1G类),但是这个错误仍然在60秒内发生。根据这些文档,当使用TaskQueue和后端时,超时时间应该延长到10分钟。
下面是我如何分配在TaskQueue上运行的操作,并在后端的第一个实例上指定它的目标。
taskqueue.add(url='/crons/myworker', target='1.myworker')
这是backends.yaml.
backends:
- name: myworker
class: B4_1G
instances: 5
options: dynamic
对可能发生的事有什么想法吗?谢谢。
发布于 2013-12-27 18:07:51
任何通过HTTP获取数据的请求在应用程序引擎上都不会超过60秒。
10分钟的限制是指任务本身--它们最多可以运行10分钟。
所以GAE在这里可能不是最好的选择,因为您只能使用它提供的urlfetch等版本,如果您的请求平均要花费超过60秒的时间。
您可以为请求设置最后期限,服务将等待响应的时间最多。默认情况下,获取的截止日期是5秒。HTTP请求的最大截止时间为60秒,任务队列和cron作业请求的截止时间为10分钟。
https://developers.google.com/appengine/docs/python/urlfetch/
因此,一个任务最多可以运行10分钟,而url获取的时间最长为60秒。在何处执行urlfetch操作并不重要,无论是从前端还是后端,限制都是相同的。
https://stackoverflow.com/questions/20805543
复制相似问题