新しい柔軟なアプリ エンジン ランタイムを試しています。この場合、Google が提供する Ruby ランタイムに基づくカスタム Ruby on Rails ランタイムです。
プロセス全体の起動に約 8 分かかる場合gcloud preview app deploy
、そのほとんどは「サービスの更新」です。これは正常ですか?さらに重要なことに、どうすれば高速化できますか?
よろしく、
区
新しい柔軟なアプリ エンジン ランタイムを試しています。この場合、Google が提供する Ruby ランタイムに基づくカスタム Ruby on Rails ランタイムです。
プロセス全体の起動に約 8 分かかる場合gcloud preview app deploy
、そのほとんどは「サービスの更新」です。これは正常ですか?さらに重要なことに、どうすれば高速化できますか?
よろしく、
区
はい、それはまったく正常です。展開手順のほとんどはコンピューターから離れた場所で行われ、コードベースのサイズとは無関係であるため、プロセスを高速化するためにできることはあまりありません。
App Engine にアプリをデプロイするためのさまざまな手順は、次のように分類できます。
ほとんどの時間がかかる唯一のプロセスは、展開が成功したことを確認し、トラフィックの取り込みを開始するために必要なすべてのチェックを行う最後の部分です。コードのサイズ (コンテナーを作成するためのコードのアップロード) とリソースの要件 (カスタム リソースのプロビジョニング) によっては、ステップ 2 と 3 にもう少し時間がかかる場合があります。
分析を行うと、最後のステップで約 70% の時間が費やされていることがわかります。このステップでは、可視性が最も低くなりますが、app-engine にすべての重労働を実行する機能を与える重要なプロセスです。
同じバージョンにデプロイすると、その後のデプロイで 6 分から 3 分になりました。
例:
$ gcloud app deploy app.yaml --version=test
Make sure you check what is in the zip it's uploading (it tells you the location of this on deploy), and make sure your yaml skip_files is set to include things like your .git directory if you have one, and node_modules
後続のデプロイは 8 分よりもはるかに高速であることに注意してください。App Engine Flex で Node.js を使用した私のテストでは、通常 1 分以内です。