2009-06-22 14 views
7

Ho già chiesto un separate question on how to create time triggered event in Java. Sono stato presentato a Quartz. Allo stesso tempo, ho anche google online, e la gente sta dicendo cron in Unix è una soluzione pulita.Lavoro a tempo Cron o Quartz?

Quale è il migliore? Quali sono i contro e i pro?

Alcune specifiche del sistema: * Unix OS * programma scritto in Java * Ho una coda di un'attività con 1000+ voci, per ogni data e ora, fino a 500 operazioni potrebbe essere attivato.

risposta

19
  1. Utilizzando cron sembra aggiungere un altro punto di ingresso nella vostra applicazione, mentre Quartz integrasse in esso. Quindi saresti costretto a gestire alcune comunicazioni tra processi se volessi passare alcune informazioni al/dal processo invocato da cron. In Quartz si esegue semplicemente (hehe) più thread.
  2. cron dipende dalla piattaforma, no.
  3. Quartz può consentire di verificare in modo affidabile che un'attività venga eseguita in un determinato momento o in un momento successivo se il server non è attivo per un po 'di tempo. Pure cron non lo farebbe per te (a meno che non lo gestisci manualmente).
  4. Quartz ha un linguaggio più flessibile per esprimere le occorrenze (quando le attività devono essere attivate).
  5. Considerare l'impronta di memoria. Se le tue singole attività condividono nulla o poco, allora potrebbe essere meglio eseguirle dal sistema operativo come processo separato. Se condividono molte informazioni, è meglio averli come thread all'interno di un unico processo.
  6. Non so come gestire il clustering nell'approccio cron. Quartz potrebbe essere utilizzato con Terracotta seguendo il modello di ridimensionamento (non l'ho provato, ma credo che sia fattibile).
+0

Eeeek !!! Apprezzo molto il tuo ampio confronto! Questo è esattamente quello che stavo cercando. Grazie mille!!!! – Lily

+0

Quartz ha la sua funzionalità di clustering, non è necessario aggiungere un livello di distribuzione ad esso. Ti permette di dire "esegui questo lavoro sul cluster da qualche parte". – skaffman

+0

questa funzionalità è piuttosto impressionante, cauz 'mi occuperò di cluster in seguito.^_^Grazie skaffman ~ – Lily

2

Il vantaggio di cron è che qualsiasi amministratore di sistema sa come usarlo ed è documentato in molti posti. Se cron farà il lavoro allora sarebbe davvero la soluzione preferita.

+0

+1 per l'applicazione del rasoio di Occam – user2910265

Problemi correlati