现在时间大约是10分钟,但是我的应用在npm安装上使用了2分钟,每次部署时应用引擎都会执行该操作,然后在大约5秒钟内运行。为什么要花这么长时间,还有什么办法可以降低它呢?
我听说过其他地方,这是由于路线变化所致,而docker使事情变慢了。但是我相信像Google这样的公司可以设法将其至少降低到当前速度的1/3。
还有一些较旧的问题,但我想有一个最新的答案
why does google appengine deployment take several minutes to update service
https://groups.google.com/forum/#!topic/google-appengine/hZMEkmmObDU
答案 0 :(得分:0)
目前,App Engine Flexible部署确实确实很慢,但是正如您提供的链接所述(这仍然成立),大部分部署时间是由您无法执行的操作(负载均衡器和网络配置等)。您可以加快速度的方法是:
现在,有一个选项可以绕开开发过程中的大多数新设置。您可以在部署过程中指定一个已经存在的版本名称作为参数,还可以指定--no-promote
标志:
gcloud app deploy --version <existing-version-number> --no-promote
我自己尝试过,它极大地减少了部署时间,对于Hello World应用程序,部署时间减少到大约1m30。它执行就地替换,而不是新替换。当然,大多数节省的时间是由于跳过了开销,因此您必须手动将流量定向到该新版本。另外,版本清晰性显然会受到影响,这就是为什么我不建议将其用于生产部署的原因。