我的Google App Engine应用程序需要运行一个冗长的计算。我的模块上的自动缩放返回DeadlineExceededError
,因此我尝试切换到手动和基本缩放。
对于基本缩放,我将其添加到我的yaml文件中。
instance_class: B2
basic_scaling:
max_instances: 5
idle_timeout: 10m
但是当我向模块发送URL请求时,我的日志充斥着56:
/_ah/start 404
No handlers matched this URL.
然后最终返回:
HTTPError: HTTP Error 503: Service Unavailable
对于手动缩放,我将其添加到我的yaml文件中:
instance_class: B2
manual_scaling:
instances: 1
但是当我向模块发送URL请求时,过了一会儿我得到了:
HTTPError: HTTP Error 503: Service Unavailable
但是日志中没有任何内容。
我错过了什么?我需要为/_ah/start
设置处理程序吗?我认为启动模块可以接受404。
答案 0 :(得分:5)
想出来。我不得不在我的模块中添加一个处理程序。
我补充说:
- url: /_ah/start
script: colors.handler.app
到我的handlers:
并且有效。
答案 1 :(得分:0)
有趣。我刚刚遇到了这个问题。
当实例使用HTTP状态代码200-299或404响应/ _ah / start请求时,它被认为已成功启动并可以处理其他请求。否则,App Engine将终止实例。手动扩展实例会立即重新启动,而基本扩展实例仅在提供流量时才会重新启动。