救われていない作業を失うことなく、メンテナンスのためにWebアプリケーションをロックダウンする方法は?

StackOverflow https://stackoverflow.com/questions/19854630

質問

私は、現在のユーザーが仕事を失うことなくメンテナンスのためにロックダウンされる方法を現在持っていないASP .NET(ここではテクノロジーが重要ではない)に大規模なWebアプリケーションを持っています。私は以前にこのようなものを実装したことがなかったので、開発者がそのような操作のために取る標準的な予防策とステップのいくつかについて聞きたいと思います。

ここに私が考えることができる質問のいくつかがあります:

  • 各ページは「メンテナンスのためにサイトダウン」ページにリダイレクトする必要がありますか、それとも相互作用を防ぐためのより中心的な方法はありますか?
  • サイトがロックダウンされる前にユーザー操作がロックダウンされるように、スケジュールされたメンテナンスを集中化する方法。したがって、救われていない仕事の喪失を防ぐ。

アプリケーションはデータ駆動型であり、ビジネスレイヤーでトランザクションスコープを実装しています。負荷分散や複製は使用しません。私は間違っているかもしれませんが、BLLにこれを処理させることは「正しいと感じません」。記事への提案やリンクをいただければ幸いです。

役に立ちましたか?

解決

メンテナンスページを作成する1つの方法は、IISのapp_offline.htm機能を使用することです。この機能を使用すると、メンテナンスについて通知するすべてのユーザーに同じHTMLページを表示できます。

Stackoverflowにはここに素晴らしい投稿があります。 ASP.NET 2.0- app_offline.htmの使用方法.

別のことができることは、ユーザーがスケジュールされたメンテナンスがあることを通知して、アプリケーションの使用を認識して停止することです。

それはすべて、アプリケーションをアップグレードするために必要な時間に依存します。アップグレードが新しいファイルをアップロードし、それ以上1〜2分かかりない場合、ユーザーが表示されない可能性が最も高いです。

他のヒント

役立つ可能性のある非回答の回答:アプリケーションを設計して、ユーザーに透過的にフライでアップグレードできるようにします。そうすれば、ユーザーが本当に心配する必要があるメンテナンスウィンドウはありません。すべてが機能し続けるため、アプリケーションをロックダウンする必要はありません。トランザクションが削除された場合、アプリケーションを進行中のトランザクションでアップグレードできるという明示的な要件があるため、それはアプリケーションのバグです。そのため、それをサポートするためにコード化されており、その機能を確認するテストがあります。

Netflixの例として考慮してください:ロックダウンメンテナンスウィンドウがありますか?一般大衆がこれを知っているわけではありません。 :-)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top