新しいモジュールがあり、実行する必要setup:upgrade
がある場合、ダウンタイムをゼロにする方法はわかりません。データベースをアップグレードする必要があるため、常に10〜20秒ダウンします。それとも何か不足していますか?
別のフォルダーにデプロイしていて、すべてのファイルが生成されたときにライブ環境をこのフォルダーにシンボリックリンクした場合でも、データベースの世話をする必要があります。
新しいモジュールがあり、実行する必要setup:upgrade
がある場合、ダウンタイムをゼロにする方法はわかりません。データベースをアップグレードする必要があるため、常に10〜20秒ダウンします。それとも何か不足していますか?
別のフォルダーにデプロイしていて、すべてのファイルが生成されたときにライブ環境をこのフォルダーにシンボリックリンクした場合でも、データベースの世話をする必要があります。
回答:
ダウンタイムが10〜20秒、さらには数分である場合、どのような環境で作業しているのでしょうか。当然、それは理想的ではありませんが、特にピーク時以外の時間に展開する場合は、それが非常に小さな代償になると想像する必要があります。
M2開発者向けドキュメント:Magentoを運用環境に展開します。このドキュメントの執筆時点では、ドキュメントはまばらであり、議論のために外部のGitHubの問題にリンクしています。ただし、これらの公式ドキュメントは注目するのに適した場所です。
私のチームはCapistranoを使用してM2を展開することを調査しています。私たちはまだ最終プロセスに落ち着いていませんが、単純なGoogle検索(「capistrano magento 2」)は、多くの人々が同じことを実験していることを示しています。
最後に、青緑展開などのさまざまなスキームがあり、ダウンタイムの最小化も求められます。特に青緑はステージングサーバーを持つようなものですが、重要なときにDNSを更新して青から緑を指し、緑をライブに、青を「ステージング」に変更します。次の展開では、青が再び有効になります。このように、ダウンタイムは理論的にゼロであり、DNSの変更が伝播すると同時に変更が発生します。