1. ホーム
  2. asp.net

[解決済み] ASP.NETアプリケーションをダウンタイムなしでデプロイする方法

2022-07-14 15:24:15

質問

私たちのウェブサイトの新しいバージョンをデプロイするために、次のことを行います。

  1. 新しいコードを Zip 形式で圧縮し、サーバーにアップロードします。
  2. ライブ サーバー上で、IIS ウェブサイト ディレクトリからすべてのライブ コードを削除します。
  3. 新しいコードの zip ファイルを、今は空の IIS ディレクトリに解凍します。

このプロセスはすべてスクリプト化されており、非常に迅速に行われますが、古いファイルが削除され、新しいファイルが展開されるときに、10 ~ 20 秒のダウンタイムが発生する可能性があります。

ダウンタイムが 0 秒の方法について何か提案はありますか?

どのように解決するのですか?

2台のサーバとロードバランサが必要です。以下、順を追って説明します。

  1. すべてのトラフィックをサーバー 2 で有効にする
  2. サーバー1にデプロイ
  3. サーバー 1 のテスト
  4. サーバー1のすべてのトラフィックをオンにする
  5. サーバー2にデプロイ
  6. サーバー 2 をテストする
  7. 両サーバーでトラフィックを回す

この場合であっても、"スティッキー セッションを使用している場合は、アプリケーションの再起動とセッションの損失が発生することになります。データベース セッションまたはステート サーバーがある場合は、すべてがうまくいくはずです。