2010-05-12 3 views

Antwort

3

Ich bin mir nicht sicher, ob Ihr Problem ein Cluster oder etwas anderes ist. Wenn Sie jedoch einen TimerListener nach einer Ausführung anhalten möchten, verwenden Sie einfach die eingegebene Timervariable und brechen sie ab.

Ex:

public static class MyTimer implements TimerListener { 
    public void timerExpired(Timer timer) {  
     timer.cancel(); 
    } 
} 

Wenn Sie ein Problem mit der Cluster-Umgebung mit der Task einmal pro Instanz als meine Entschuldigung für die Buchung dieser einfache Antwort ausgeführt wird.

2

Sie sollten wahrscheinlich this solution lesen, um zu beurteilen, ob es zu Ihrer Situation passt.

5

Sie können den Scheduler-Dienst von WebSphere verwenden, um das zu tun, was Sie möchten. Wenn Sie einen Scheduler-Service im Cluster-Bereich definieren, führt jedes Cluster-Mitglied einen Scheduler-Daemon aus, aber die Aufgaben-DB wird freigegeben, dh nur einer von ihnen führt die Aufgabe aus, die Sie hinzufügen. Sie befragen die Datenbank alle 30 Sekunden (konfigurierbar) und die erste, um zu sehen, die Aufgabe wird es ausführen.

http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/topic/com.ibm.websphere.nd.doc/info/ae/ae/welc6tech_sch_adm.html

Denken Sie daran, die EJB 3.1 neue Funktionen bietet, die Sie tun, was Sie wollen helfen könnten, aber dies war nur 8.