猿问

为什么我在使用此 GCP App Engine 应用时没有收到

我试图更好地了解 Google App Engine,特别是请求处理时间限制。在文档中,它指出:


请求处理程序生成和返回请求响应的时间有限,通常约为 60 秒。一旦达到最后期限,请求处理程序就会中断。


我理解这意味着调用下面的 sleep 函数(通过 [project-id].appspot.com/sleep url)会导致错误,但事实并非如此。我已经运行了 600 秒,它仍然返回了预期的响应。


import time

from flask import Flask


# If `entrypoint` is not defined in app.yaml, App Engine will look for an app

# called `app` in `main.py`.

app = Flask(__name__)



@app.route("/")

def hello():

    """Return a friendly HTTP greeting."""

    return "Hello World!"



@app.route("/sleep")

def sleep():

    sleep_time = request.args.get("time", default=120, type=int)

    time.sleep(sleep_time)

    return f"slept {sleep_time} seconds"


慕森卡
浏览 195回答 1
1回答

摇曳的蔷薇

有两件事正在发生:App Engine 在这里很慷慨,而您还没有完全超出限制。我尝试了以下应用程序:import timefrom flask import Flaskapp = Flask(__name__)@app.route("/")def hello():    """Return a friendly HTTP greeting."""    time.sleep(1000000)    return "Hello World!"它在601.9 秒后超时。如果您尝试更长的时间,我相信您会得到类似的行为,但通常您不应该依赖额外的运行时间。
随时随地看视频慕课网APP

相关分类

Python
我要回答