L'ambiente di produzione che esegue un processo di pianificazione java utilizzando il quarzo 2.1.4. su un server cluster weblogic con 4 macchine e un solo lavoro di pianificazione eseguito su un nodo cluster (nodo 1) normalmente per alcuni mesi, ma il nodo 2 rileva improvvisamente che il nodo 1 non riesce a rilevare il lavoro in esecuzione la scorsa notte. Infatti, il nodo 1 senza errore (in base al server, alla rete, al database, al registro dell'applicazione), questo evento ha causato la creazione di un messaggio duplicato a causa dell'elaborazione simultanea di due processi.Fallimento dei nodi di rilevamento del quarzo
Qual è il meccanismo del quarzo per rilevare il guasto del nodo? Tramite ping scan o heart beat ping via broadcast UCP o tempo di risposta del database altro? Qualche configurazione su di esso?
Ho letto la guida alla configurazione del quarzo http://quartz-scheduler.org/documentation/quartz-2.1.x/configuration/ConfigJDBCJobStoreClustering , ma non c'è risposta.
Sto usando JDBCJobstore. Dopo aver controllato i dettagli, abbiamo scoperto che esiste un'istruzione di database (Oracle) in esecuzione anormale lunga (da 5 secondi a 30 secondi). L'incidente è accaduto in questo periodo di tempo. Pensi che sia collegato?
mia configurazione è
` org.quartz.threadPool.threadCount = 10
org.quartz.threadPool.threadPriority = 5
org.quartz.jobStore.misfireThreshold = 10000
org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX `
Qualcuno ha questa informazione? Grazie.