Google App Engine 应用程序 - klein micro web 框架出现 502 错误网关错误
Google App Engine Application - 502 bad gateway error with klein micro web framework
我开发了一个python基于scrapy的webcrawler应用并打包为klein应用(klein framework)
当我在本地测试它时,一切都按预期工作,但是当我将它部署到 google 应用引擎时,我得到一个“502 错误网关”。我发现了 502 错误的其他提及,但与我正在使用的 klein 框架无关。所以我只是想知道 App Engine 是否可能与它不兼容。
这是我的文件夹结构
app
--app.yaml
--main.py
--requirements.txt
app.yaml的内容
runtime: python37
instance_class: F2
handlers:
- url: /.*
secure: always
redirect_http_response_code: 301
script: auto
main.py
的内容
from klein import route, run
@route("/")
def landing_page(request):
return "HELLO"
if __name__== "__main__":
run(host='127.0.0.1', port=8080)
App Engine 要求您的 main.py
文件声明一个 app
变量,该变量对应于 WSGI Application.
由于 Klein 是一个异步 Web 框架,it is not compatible with WSGI(同步)。
您最好的选择是使用像 Cloud Run 这样的服务,它允许您定义自己的运行时并使用与 Klein 兼容的异步 HTTP 服务器。
我开发了一个python基于scrapy的webcrawler应用并打包为klein应用(klein framework)
当我在本地测试它时,一切都按预期工作,但是当我将它部署到 google 应用引擎时,我得到一个“502 错误网关”。我发现了 502 错误的其他提及,但与我正在使用的 klein 框架无关。所以我只是想知道 App Engine 是否可能与它不兼容。
这是我的文件夹结构
app
--app.yaml
--main.py
--requirements.txt
app.yaml的内容
runtime: python37
instance_class: F2
handlers:
- url: /.*
secure: always
redirect_http_response_code: 301
script: auto
main.py
的内容
from klein import route, run
@route("/")
def landing_page(request):
return "HELLO"
if __name__== "__main__":
run(host='127.0.0.1', port=8080)
App Engine 要求您的 main.py
文件声明一个 app
变量,该变量对应于 WSGI Application.
由于 Klein 是一个异步 Web 框架,it is not compatible with WSGI(同步)。
您最好的选择是使用像 Cloud Run 这样的服务,它允许您定义自己的运行时并使用与 Klein 兼容的异步 HTTP 服务器。