Le temps a déclenché le travail Cron ou Quartz?
-
06-07-2019 - |
Question
J'ai déjà posé une question distincte sur la création d'un événement déclenché par le temps en Java . On m'a présenté le quartz.
En même temps, je le cherche aussi en ligne, et les gens disent que cron
sous Unix est une solution intéressante.
Lequel est le meilleur? Quels sont les inconvénients et les avantages?
Quelques spécifications du système: * Unix OS * programme écrit en Java * J'ai une file d'attente avec plus de 1000 entrées, pour chaque horodatage, jusqu'à 500 tâches peuvent être déclenchées.
La solution
- L’utilisation de
cron
semble ajouter un autre point d’entrée dans votre application, tandis queQuartz
s’y intégrerait. Ainsi, vous seriez obligé de gérer une communication inter-processus si vous vouliez transmettre des informations au / au processus appelé à partir decron
. DansQuartz
, vous exécutez simplement plusieurs threads. -
cron
dépend de la plate-forme,Quartz
ne l'est pas. -
Quartz
peut vous permettre de vous assurer de manière fiable qu'une tâche est exécutée à l'heure indiquée ou ultérieurement si le serveur était en panne depuis un certain temps.cron
ne le ferait pas pour vous (à moins que vous ne le manipuliez manuellement). -
Quartz
utilise un langage plus souple pour exprimer des occurrences (lorsque les tâches doivent être déclenchées). - Considérez l'empreinte mémoire. Si vos tâches individuelles ne partagent rien ou peu, il peut être préférable de les exécuter à partir du système d'exploitation en tant que processus séparé. S'ils partagent beaucoup d'informations, il est préférable de les avoir comme threads au sein d'un processus.
- Vous ne savez pas vraiment comment gérer le clustering dans l'approche
cron
.Quartz
peut être utilisé avec Terracotta suivant le schéma de réduction d'échelle (je n'ai pas essayé mais je crois que c’est faisable).
Autres conseils
Le principal avantage de cron est que tout administrateur système sait comment l'utiliser et qu'il est documenté à de nombreux endroits. Si cron fera le travail alors ce serait vraiment la solution préférée.