2011-03-15 72 views
3

我在GAE中使用Task Queue为我的应用程序执行一些后台工作。我已经知道特定任务有10分钟的时间限制。我担心的是如何在本地环境中测试这个东西。我尝试了线程睡眠,但它没有抛出任何异常,如谷歌应用程序引擎文档中提到的。此时间限制也是由CPU时间或实际时间来衡量的。Google App Engine中任务队列的时间限制

谢谢。

+0

您可以在10分钟内在您的机器上完成的任务与您在App Engine上10分钟内完成的任务完全不同。 – 2011-03-15 16:56:08

回答

2

时间以挂钟时间计算。开发服务器没有强制实施时间限制,虽然目前还不清楚为什么你要测试它,因为你的测试不太可能像在生产中一样执行,所以试图猜测你可以在在开发服务器上10分钟内完成10分钟的生产服务器将会失败。

+3

您可能希望通过在不同点强制超时失败来测试恢复机制。 – 2011-03-15 12:56:39

+0

实际上我想知道如何通过捕获抛出的异常来使我的应用程序失败,因为它超越了时间限制。你知道我应该在哪里发现这个异常? – dalchand 2011-03-15 13:40:04

+0

你不能抓住它。你没时间了,所以你无能为力。你应该尝试周期性地检查你离开了多少时间。 – Luca 2014-12-05 02:20:54

1

对于您的开发服务器,启动任务时启动计时器。如果您达到了10分钟的挂钟时间,请继续检查您的代码。当你到达时,抛出DeadlineExceededError。在类处理程序中使用try和except语句会更好,它会调用代码的特定函数。

相关问题