Standardmäßig beendet Akka die Actor-Systeme, wenn es eine SIGTERM
empfängt. Wie kann ich dieses Verhalten außer Kraft setzen, um meine benutzerdefinierte Abschaltlogik vor dem Herunterfahren des akka-Systems auszuführen? Ich habe diese Logik bereits in den Aktoren implementiert, indem ich spezielle anmutige Stop-Nachrichten verwende - ich muss diese Logik nur aufrufen, wenn die SIGTERM
empfangen wird.Wie kann man benutzerdefiniertes Herunterfahren auf SIGTERM mit Akka durchführen?
Oder muss ich eine andere Möglichkeit zum Herunterfahren der Anwendung verwenden? Das ist auch eine Option.
Wird das auf jeden Fall laufen, bevor der Schauspieler System heruntergefahren wird? –
Ich sehe keine Dokumentation, die das ausdrücklich sagt, aber es funktioniert für uns. –
Beim Lesen des Quellcodes und des Javadoc sieht es so aus, als gebe es keine Garantie für die Reihenfolge, in der Shutdown-Hooks ausgeführt werden, also nein, es wird nicht immer zur richtigen Zeit ausgeführt. Zum Beispiel könnte es in einer Version von Java funktionieren, aber in einer anderen Version könnte sich die Reihenfolge ändern und es könnte nicht funktionieren. Oder die Shutdown-Hooks können gleichzeitig ausgeführt werden. –