【问题标题】:Create App Engine project via API通过 API 创建 App Engine 项目
【发布时间】:2014-03-13 14:43:53
【问题描述】:

我需要自动创建新的 App Engine 项目。这可能吗?我看到有一个 Google Cloud SQL Admin API 可以创建新的 Cloud SQL 实例,但是 App Engine 呢?有没有类似的?

更新:
我们开发了一个在 GAE 上运行并使用 Cloud SQL 和大量 API 与大多数 Google Apps 集成的应用程序。我们预计在不久的将来会有数十个甚至数百个客户。他们都将使用自己的 Google 域和 Google Apps。
虽然我们实际上可以在 App Engine 中部署应用程序并修改 Cloud SQL 表以包含拥有记录的客户的 ID,但我们认为最好为每个客户部署一个应用程序实例和 Cloud SQL (根据我们自己的帐户)。想到的主要原因是我们可以跟踪每个客户在账单方面的花费,并加快数据库速度,因为 Cloud SQL 只是一个 MySQL 实例。

创建步骤需要在打包的 .war 文件中编辑一个属性文件,添加用于作为服务帐户登录的证书,这可能是我目前缺少的东西:-P

这个问题有点相关Create an App Engine Project ID command line

【问题讨论】:

  • 在开发者计算机上创建项目应该是可能的,这是创建目录和文件的问题。但我猜你的意思是自动创建新的 AppEngine 应用程序......而且我从未见过任何关于如何做到这一点的信息。不过,Eclipse AppEngine 插件有效地做了类似的事情。
  • @MartinBerends 呵呵,是的,我的意思是在 Google 服务器上创建应用程序,而不是在本地 :-)
  • 您是否知道,如果您在他们的帐户下部署应用程序,您也可以让他们下载您的源代码?
  • @JimmyKane 是的,这就是为什么我们的计划是在我们自己的帐户中部署他们的实例,但使用他们的 OAuth 证书来使用服务帐户登录并模拟他们的用户

标签: google-app-engine


【解决方案1】:

据我所知,这是不可能的(而且不太可能很快实现)。

更新:

我明白为什么为了计费目的而拆分为单独的项目会非常好(多租户很棒,但从 Google 为每位客户收取一份账单听起来更容易),但不幸的是,我认为这不会是您的最佳选择。

对于 AppEngine,您可能需要查看multi-tenancy features(或in Python)和how to get stats for billing

但请记住,CloudSQL 只是一个 MySQL 实例。它碰巧说 MySQL,但与在 Compute Engine 上运行 MySQL 不同。我建议您运行一些基准测试,以确保您的“将客户 ID 添加到表中”的想法不会奏效。

最后,可能相关的阅读:http://signalvnoise.com/posts/1509-mr-moore-gets-to-punt-on-sharding

我想结论是,抢占明天的技术进步是没有用的。机器将一直变得更快、更便宜,但您仍然只能拥有与昨天相同的有限编程资源。

如果您可以将它们用于添加用户关心的内容,而不是过早地为未来优化,那么当明天终于到来时,您就有更好的机会开展业务。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多