gcloud预览应用程序部署过程需要大约8分钟,这是正常的吗?

时间:2016-06-07 15:11:06

标签: google-app-engine google-cloud-platform gcloud app-engine-flexible

尝试新的灵活应用引擎运行时。在这种情况下,基于谷歌提供的ruby运行时自定义Ruby on Rails运行时。

gcloud preview app deploy被解雇时,整个过程需要大约8分钟,其中大部分是"更新服务"。这是正常的吗?更重要的是,我怎样才能加快速度呢?

此致

沃德

6 个答案:

答案 0 :(得分:32)

是的,这是完全正常的。大多数部署步骤远离您的计算机,并且与您的代码库大小无关,因此您无法做很多事情来加快这一过程。

在App Engine上部署应用程序所涉及的各个步骤可分类如下:

  1. 从app.yaml收集信息以了解整体部署
  2. 收集代码并使用app.yaml中指定的泊坞窗图片,使用您的代码构建泊坞窗图片
  3. 提供计算实例,网络/防火墙规则,在实例上安装与docker相关的工具,将docker映像推送到实例并启动它
  4. 确保所有部署都成功,开始健康检查,如果需要,转移/平衡负载。
  5. 花费大部分时间的唯一过程是最后一部分,它执行所有必要的检查以确保部署成功并开始摄取流量。根据您的代码大小(上传代码以创建容器)和资源需求(配置自定义资源),步骤2和3可能需要更多时间。

    如果您进行分析,您会发现大约70%的时间是在最后一步消耗的,我们对此最不了解,但是必要的过程使app-engine能够完成所有繁重的工作。

答案 1 :(得分:13)

在后续部署中,部署到同一版本会让我从6分钟到3分钟。

示例:

$ gcloud app deploy app.yaml --version=test

答案 2 :(得分:3)

请确保检查其上传的zip中的内容(它会告诉您部署时的位置),并确保您的yaml skip_files设置为包含.git目录之类的内容(如果您有)和node_modules

答案 3 :(得分:0)

根据@ludo的建议,您可以同时使用Google App Engine标准而不是Flex。第一次部署大约需要30-50秒。

您可以通过运行本教程来测试GAE Standard,该教程不需要计费帐户:

https://codelabs.developers.google.com/codelabs/cloud-app-engine-springboot/index.html#0

并同意。这不能解决GAE Flex的问题,但提供了一些在开发过程中加速的选项。

答案 4 :(得分:-1)

请注意,后续部署应该比8分钟快得多。在我使用App Engine Flex上的Node.js进行测试时,通常需要1分钟或更短时间。

答案 5 :(得分:-7)

只需从app.yaml

的根目录激活此命令即可

从app.yaml的shell访问目录然后运行gcloud app deploy

它将在几秒钟内上传。