私の Azure ロールが Windows 一時フォルダーに大量の一時ファイルを作成し、それらを削除するのを忘れたとします。ある時点で、「一時ファイルを作成できません」というエラーが表示されます。これが発生すると、ロール コードが例外をスローしRoleEntryPoint.Run()
、ロールが再起動されたとします。
ここでは、完全な Azure 対応コードについて話しているわけではありません。私の役割は、Azure と "ローカル ストレージ" については何もせず、単にSystem.IO.Path.GetTempPath()
Azure に適していない場所にファイルを呼び出して作成するサード パーティのブラック ボックス コードを使用する可能性があります。
問題は、役割がまったく同じホストで開始され、一時フォルダーがサードパーティによってクリーンアップされていない場合、フォルダーがまだファイルでいっぱいであり、役割が機能しないことです。この回答によると、私の役割のためにローカルの変更が保持される可能性があります。これは、上記のシナリオでは大きな問題です。
作成された一時ファイルなどのローカルの変更は、ロールが再起動されたときにリセットされることが保証されていますか? 開始されたロールが適切にクリーンな状態であることを確認するにはどうすればよいですか?