Oracle tâches planifiées?

Je dessine une conception pour un système pour faire des fonctions professionnelles quotidiennes pour mon entreprise. Il consistera en une firebase database Oracle 10g avec des packages Pl / SQL et une application Web basée sur Java. Tout cela est exécuté sur un serveur Solaris 10. Outre le traitement des transactions à partir de l’interface Web, les tâches planifiées doivent être exécutées sur la firebase database pour exécuter des calculs et charger des données, etc.

Ceci est une refonte d’un système existant qui contrôle actuellement tout avec une pléthore de tâches cron. Étant donné la tâche de le modifier, le feriez-vous différemment? Je sais qu’Oracle a son propre planificateur de tâches, mais l’administrateur de firebase database soutient qu’il repenserait à son utilisation car si la firebase database est hors service ou hors ligne pour une raison quelconque, elle ne peut pas envoyer d’alertes ou consigner des erreurs. Les tâches cron ont actuellement la possibilité d’envoyer des messages SMS ou des e-mails si l’une des tâches échoue. Une autre option serait de faire en sorte que l’application Web le fasse d’une manière ou d’une autre.

Que suggérez-vous?

Toutes les tâches planifiées sont-elles liées à la firebase database? Si tel est le cas, l’objection de votre administrateur de firebase database n’est pas pertinente: vous ne voulez pas exécuter les travaux lorsque la firebase database est hors ligne pour des arrêts planifiés. que de compter sur un signal provenant d’un travail cron défaillant.

Si vous avez des tâches qui s’exécutent sur d’autres parties de l’architecture sans toucher à la firebase database, un planificateur externe est certainement utile. Il y a beaucoup de produits commerciaux, mais si vous voulez opter pour le logiciel libre, vous devriez probablement regarder Quartz .

Ayant utilisé à la fois cron et Oracle job scheuler – je l’ai toujours trouvé beaucoup plus fiable et plus facile à utiliser et à comprendre cron. Il a plus de choses à faire (interface avec l’ensemble du système d’exploitation, pas seulement Oracle). Je choisirais cron.

Ma règle de base pour les tâches planifiées est la cohérence. Étant donné que vous avez déjà beaucoup d’infrastructure en place, par exemple pour alerter, je m’en tiendrai à cron.