我在app.yaml中有以下内容:
- url: /gae_mini_profiler/static
static_dir: gae_mini_profiler/static
- url: /gae_mini_profiler/.*
script: gae_mini_profiler/main.py
- url: .*
script: main.py
以及gae_mini_profiler / main.py中的以下内容:
def main():
logging.critical("gae_mini_profiler request!")
run_wsgi_app(application)
但是,当我向/ gae_mini_profiler / request?request = ABC发送请求,并反复重新加载页面时,有时我会得到正确的响应(以及“gae_mini_profiler request!”日志条目,有时候我得到一个空白的响应,App Engine日志中没有任何内容,只有200的响应体空白。
这是完全可重现的,只发生在现场环境中,我会说~50%的刷新工作,而50%没有。
这只发生在生产中。有什么想法吗?
答案 0 :(得分:4)
你的main.py
if __name__ == '__main__':
main()
给定的appserver第一次使用给定的处理程序处理请求时,它只是导入它。这个节告诉解释器在导入为处理程序时运行main()
函数。在后续请求中,appserver直接运行main,这就是你每隔一段时间看到输出的原因。