web-dev-qa-db-ja.com

スケジュールされたタスクは時々2回実行されます

私の顧客は非常に奇妙な問題を経験しています。スケジュールされたタスクが時々2回実行され、実行の間隔はわずか数秒です。

タスクは、Windowsスケジューラを使用してスケジュールされます。これは、TCP/IPを使用してローカルサービスに接続し、認証し、コマンドを与えて切断する非常に基本的なタスクです。それはほぼ瞬時です(最も長い部分は実際にはSSLハンドシェイクです)。

それは私が修正するサーバーアプリケーションの問題を引き起こしますが、私の問題は、タスクが2回実行されている正当な理由を単に見つけることができないということです:誰もそのマシン(それはアプリケーションサーバーです)とサーバーログにインタラクティブに接続されていませんは、これらすべての接続が127.0.0.1からのものであることを示しています。ポートIDとスレッドIDの両方を送信すると、サーバーアプリケーションの内部的な「ゴースト」効果がないことを非常に明確に示します。

残念ながら、そのサーバーではタスク履歴が有効になっていないため、その前に実行トレースがありません。有効にしました。問題が再発する場合は、確認します。ただし、問題が発生した頃には、誰もマシンに接続されていなかったことを確認しました。

誰かがこれを説明できますか?

ありがとう

4
Stephane

まあ、それはOSのバグのようです。 MSには、そこで利用可能な修正があります: http://support.Microsoft.com/kb/2461249

3
Stephane