在Google Compute Engine上提供大型django应用程序有哪些最合适的方法?

时间:2015-01-23 21:59:50

标签: django google-compute-engine

我正在开发一个项目,可能会有很多用户上传的内容以及相当大的用户群。我现在正在寻找将此应用部署到 Google Compute Engine

我已经查找了可能的选项, nginx + gunicorn 似乎是个不错的选择。在开始的时候,我将使用一个带有100 GB持久性硬盘的ns-1实例和 google cloud sql 来为我的数据库提供服务。

但是我希望能够实现可扩展性,以便我可以在未来任何喧嚣的情况下添加更多实例和磁盘存储。但我很困惑如何做到这一点。所以主要关注的是。

我想要这样的设置,以便我可以扩展我的磁盘空间而不是。随时随地使用Google Compute Instance。

2 个答案:

答案 0 :(得分:1)

为了拥有完全可扩展的架构,一种好的方法是将计算/服务与文件存储以及数据存储分开。分道扬::

  • 文件存储 - Google云端存储 - 通过将公共服务文件存储在GCS存储桶中,您将获得一个高度冗余且可扩展的中央存储库;

  • 数据存储 - Google Cloud SQL - 为您提供高度可靠,可扩展的类MySQL数据库后端,可以随意调整大小以适应不断增加的数据库使用量;

  • 前端 - GCE实例组 - 模板生成的Web /计算前端,设置转发规则(负载均衡器)分配传入连接的资源池。

简而言之,这是我能想到的最具适应性的设置之一,同时您可以控制服务和底层基础架构的各个方面。

答案 1 :(得分:0)

一种简单的方法是在Google App Engine上运行Python应用程序,它将自动扩展您的实例(向上和向下),并支持Django,如评论中@spirulence所述。

以下是一些起点:

最后一个链接显示当前支持哪些版本的Django。