SQL Server 2005 データベースに対して実行される ASP.NET アプリを使用しています。1 日に 1 回、SQL エージェント ジョブで一連のプロシージャと SSIS パッケージを実行して、テーブルのデータを更新する必要があります。SQL エージェント ジョブはスケジュールに従って無人で実行されます。
SQL エージェント ジョブ ステップの実行中に Web アプリが失敗する機会がわずかにあるため、アプリを一時的に完全に無効にし、重要なステップを実行してから、アプリを再度有効にします。
app_offline.htm
Web アプリ サイトのルートにあるファイルを使用できることがわかりました。これを行うには、SQL エージェント パッケージにサーバー全体のアクセス許可を提供してren app_offline.tmp app_offline.htm
、Web サーバーでのような処理を実行し、手順を実行してから、htm ファイルを .tmp に戻す必要があります。
私が検討していたもう1つのオプションは、SQLエージェントジョブによって更新されるテーブルに「MAINTMODE」ブール値を配置し、データベースへのすべての呼び出しでWebアプリがそれをチェックして、それが利用可能であることを確認することでした. そうでない場合は、サイトが一時的にオフラインであることを示すページにリダイレクトします。
考慮すべき他のアプローチはありますか?ユーザーへの影響を最小限に抑える最善の方法は何ですか?
ありがとう、
クリス