同じソフトウェアを2台のサーバーで実行しています。このソフトウェアの各部分は、実行されるジョブを特定の時間に昼食するクォーツを実行します。両方のサーバーのクロックが同期していると仮定すると、これら2つのジョブは同時に開始され、同じことを実行します... 1つのジョブだけを実行し、もう1つのジョブは実行しないようにするにはどうすればよいですか?
私もデータベースを持っており、最初に考えたのは、ジョブの開始時に行を挿入する場所のテーブルを作成し、当日のレコードがあるかどうかを確認することでした(ある場合は、ジョブの実行をスキップします...)。サーバーのクロックが完全に同期されている場合、両方のアプリが同時に書き込みとチェックを行うため、このメカニズムは役に立たなくなります。
他にどのようなソリューションを実装できますか?