在 Google Appengine 文档中,它说任务限制为 10 分钟。但是,当我运行延迟任务时,它们会在 60 秒内死亡。我找不到任何可以提及的地方。
这是否意味着 Appengine 延迟任务被限制为 60 秒,或者我做错了什么?
更新:第一个任务是从请求触发的,但我不等待它返回(无论如何我怎么能,没有回调)。我从任务本身内部以递归方式触发的后续任务。
DeferredTask df = new QuoteReader(params);
QueueFactory.getDefaultQueue().add(withPayload(df));
他们中的许多人只是工作,但对于那些达到 1 分钟限制的人,我得到ApiProxy$ApiDeadlineExceededException
com.googlecode.objectify.cache.Pending completeAllPendingFutures:清理未决未来时出错:com.googlecode.objectify.cache.CachingAsyncDatastoreService$3@17f5ddc java.util.concurrent.ExecutionException:com.google.apphosting.api.ApiProxy$ApiDeadlineExceededException: API 调用 datastore_v3.Get() 响应时间过长并被取消。
我注意到的另一件事是,这会影响同时发生的对该服务器的另一个请求,并且随着DeadlineExceededException
.