在GCP云功能上无服务器部署Django App

时间:2020-06-03 07:47:48

标签: django aws-lambda google-cloud-functions

我有一个Django webapp(一个论坛),其中有几个屏幕,如登录,个人资料,帖子,回复等。

在专用实例上进行常规部署(考虑到可伸缩性和性能)似乎很昂贵。我在AWS Lambda上遇到了Django应用的无服务器部署。这是AWS上的此类example。但是我在GCP上找不到任何类似的东西。

使用Google云功能(GCF)是否有可能实现类似目的?

换句话说,可以使用GCF部署以下任何一项:

  • 可以提供动态页面的网络应用
  • 具有多个休息端点的微服务

1 个答案:

答案 0 :(得分:1)

我不建议在Cloud Functions本身中部署Django应用程序,因为我不知道像Zappa这样的工具(仅适用于AWS)可以轻松地将WSGI Web应用程序构建和部署到云功能。我要说的是,该产品本身更侧重于“与云基础架构和服务发出的事件相关的单一功能”,并且具有以下use cases,例如轻量级的API,webhooks等,而不是部署Django应用程序。

如果您对Cloud Functions的无服务器方面感兴趣,我宁愿探索Google Cloud Platform的其他产品,主要是App EngineCloud Run(尽管您已经知道还可以依赖Compute Engine,实例和Kubernetes引擎(如果您还对完全控制该应用程序感兴趣)。

要回答上述问题,请注意,您可以轻松地将Firebase Cloud Functions + Firebase托管轻松集成到serve dynamic content and host microservices中(但请注意,此解决方案将特别需要迁移才能使用Express.js之类的JS网络框架,因为Firebase Cloud Functions只能用Node.js编写,并且不支持Django基于的Python运行时)。