私の実稼働環境では、quartz 2.1.4を使用してJavaスケジューラージョブが実行されています。 1台のクラスタノード(ノード1)で通常数ヶ月間実行されますが、ノード2は突然ノード1が実行中のジョブを引き継ぐ際に失敗します。実際には、ノード1はエラーなし(サーバー、ネットワーク、データベース、アプリケーションログに従って)、このイベントは2つのプロセスの同時実行によって作成された重複メッセージを引き起こしました。石英検出ノードの失敗方法
ノードを検出するためのクォーツのメカニズムは何ですか? pingスキャン、またはUCPブロードキャストによるハートビートping、またはデータベースの応答時間を他の方法で行うには?その上の任意の構成ですか?
私は石英設定ガイド http://quartz-scheduler.org/documentation/quartz-2.1.x/configuration/ConfigJDBCJobStoreClustering を読んでいますが、答えはありません。
私はJDBCJobstoreを使用しています。詳細を確認した後、異常なlong(5秒から30秒まで)を実行するデータベース(Oracle)文があることがわかりました。事件はこの期間に起こった。あなたはそれが関係していると思いますか?
私の設定がある
` org.quartz.threadPool.threadCount = 10
org.quartz.threadPool.threadPriority = 5
org.quartz.jobStore.misfireThreshold = 10000
org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX `
誰でもこの情報を持っていますか?ありがとう。