【问题标题】:Deploying WSGi app on AWS Lambda在 AWS Lambda 上部署 WSGi 应用程序
【发布时间】:2018-06-06 01:34:44
【问题描述】:

我正在尝试在 AWS Lambda 上部署使用 Python、Flask 构建的基于 WSGi 的应用程序。

但是,请求的往返似乎正在进行,但是当请求被返回时,werkzeug 模块无法调用 LambdaContext: Not a callable object。

'LambdaContext' 对象不可调用:TypeError 回溯(最近一次通话最后): 调用中的文件“/home/ubuntu/venv/local/lib/python2.7/site-packages/flask/app.py”,第 1997 行 wsgi_app 中的文件“/home/ubuntu/venv/local/lib/python2.7/site-packages/flask/app.py”,第 1989 行 调用中的文件“/tmp/pip-install-Xytrxp/Werkzeug/werkzeug/wrappers.py”,第 1277 行 TypeError: 'LambdaContext' 对象不可调用

我正在尝试使用无服务器进行部署,但我的问题是,当我使用无服务器构建部署包时,它会超过 250 MB,这是 AWS Lambda 的限制

我使用 Zappa 构建了这个包,删除了 python 包中一些不必要的文件,大小为 248 MB。我可以使用它进行部署,但使用无服务器部署会引发问题。

那么,有人知道无服务器实际上是做什么的吗?我们可以在 AWS Lambda 部署包中包含 serve.py 和 wsgi.py 文件吗?

如果是,还需要进行哪些更改才能将这些 python 文件添加到部署包中以使应用程序包装在无服务器上。

【问题讨论】:

    标签: python amazon-web-services aws-lambda serverless


    【解决方案1】:

    我能够通过使用 serverless-wsgi 来处理这个问题。我们只需要包含 wsgi.py 和 .wsgi_app 文件,并且需要将 wsgi.handler 作为 Lambda Function Handler

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-22
      • 2014-05-25
      • 2016-12-25
      • 2013-12-19
      • 2016-06-23
      相关资源
      最近更新 更多