2010-07-22 5 views
2

Je souhaite exécuter une tâche d'arrière-plan sur un certain intervalle à partir d'une application Web que j'ai déployée sur un environnement en cluster Websphere 6.1. La tâche va accéder à une base de données, envoyer des courriels et écrire dans la base de données.Comment exécuter une tâche planifiée dans l'environnement en cluster Websphere 6.1

Je pensais lancer un thread lors du chargement de l'application web, comme suggéré ici: Background Thread for a Tomcat servlet app.

Puisqu'il s'agit d'un environnement en cluster, quelle serait la meilleure façon de NE PAS faire fonctionner la tâche sur chaque nœud individuel du cluster?

Répondre

1

Regardez le WAS Scheduler service.

Il dit des environnements en cluster:

daemons Scheduler dans un cluster

Lorsque plusieurs ordonnanceurs sont configurés pour utiliser les mêmes tables (comme est le cas dans un environnement cluster) , l'un des démons peut rechercher une tâche et définir l'alarme dans sa machine virtuelle Java (JVM) . La tâche est exécutée dans la machine virtuelle où le démon du planificateur s'exécute en premier, jusqu'à ce que le démon soit arrêté et un autre démon démarre. Si une application sur le serveur 1 programme une tâche et que le serveur2 a été démarré avant le serveur1, la tâche est exécutée sur server2.

Questions connexes