这是什么?
Zappa 是一个工具,可以打包并部署基于 Python WSGI 的 Web 应用(使用 Flask、Django、Bottle 或 Pyramid 构建),让它们以无服务器的方式运行在 AWS Lambda 上,并通过 API Gateway 对外提供服务,无需管理任何服务器。
Zappa 是 Web 框架,还是用于部署现有应用的工具?
它是一个部署和打包命令行工具,而不是框架。你照常用 Flask、Django、Bottle 或 Pyramid 编写应用,Zappa 负责把应用部署到 Lambda 上。
我该如何用 Zappa 部署应用?
先用 pip 安装,然后运行 'zappa init' 为项目生成配置文件,再运行 'zappa deploy' 将应用推送到 AWS Lambda 和 API Gateway(后续部署则运行 'zappa update')。
使用它需要 AWS 账户吗?
需要。Zappa 会部署到 AWS Lambda 和 API Gateway,因此部署前需要在本地配置好 AWS 凭证。
这个 GitHub 仓库还是 Zappa 活跃开发和发布的地方吗?
不是了。这个仓库曾是 Zappa 的原始主页,但 0.52.0 之后的版本已改为在其他位置发布,请前往该后继项目获取最新修复。
哪些 Python Web 框架可以与 Zappa 一起使用?
它支持兼容 WSGI 的框架:Flask、Django、Bottle 和 Pyramid,这也是项目自身主题标签(topics)中列出的框架。
对于 Flask 或 Django 应用,为什么要用 Lambda 而不是普通服务器?
Lambda 会自动扩缩容,并且只按请求次数付费。因此 Zappa 让现有的 WSGI 应用无需预配或管理任何服务器即可运行。
我能否保持现有的 Django 或 Flask 代码不做任何改动?
可以。Zappa 会包装你现有的 WSGI 应用,通常无需重写应用本身,只需使用 Zappa 的命令行工具进行配置和部署即可。
What are similar projects?
chalice, examples, serverless, localstack, encore, awesome-aws, pulumi, caprover
Which topics is it in?
aws-lambda, lambda, flask, django, api-gateway, serverless, aws, deployment, deprecated, cloud, devops, backend