Google App Engine流程已终止(错误代码123)

时间:2016-02-15 21:36:34

标签: python google-app-engine

我见过很多人都有这个问题。

Process terminated because the request deadline was exceeded. (Error code 123)

有没有人知道可能导致此问题的原因?我增加了项目的实例。我最小化了尽可能多的数据库连接,如果连接失败,我一定要抓住它并关闭我的连接。

获取此错误的一些请求花费的时间超过60秒,达到了App Engine标准的限制,但并非所有这些都达到了限制。有些错误是3-10秒。

谢谢

2 个答案:

答案 0 :(得分:0)

这些请求中的一些可能会超时,因为请求已经在队列中等待您的应用程序太长时间。其中一些可能是loading requests,您可以通过installing a warmup handler修复这些问题,然后在用户请求到达之前加载您的应用。

另一种可能导致请求在队列中花费大量时间的可能性是,如果您有threadsafe的值(如果您使用的是Twisted或NDB等异步框架,请使用threadsafe: true)或max_concurrent_requests并不能反映您的应用行为。 max_concurrent_requests应该大致等于(响应的响应时间/响应的cpu时间);默认值为8,但如果您主要有同步请求,则可能需要将其设置得更低。

答案 1 :(得分:0)

此处记录了各种截止日期超出错误:https://cloud.google.com/appengine/articles/deadlineexceedederrors

并非所有截止日期都是平等的!

当请求超过截止时间时,会导致进程停止,这将中断并导致同一实例上的所有其他请求也失败。你会在日志查看器中看到104这些请求。