Ja klar, was spricht denn dagegen statt die Verbindungen blind hart abzuschießen, vorher nachzusehen und den Clienten eventuell gezielt zu sagen, dass "sie" zu machen sollen?
(und wer dann noch nicht gehört hat, oder hängen geblieben ist, der wird dann eben hart serverseitig disconnected)
Wir nutzen bei uns die
DB-Notivications im PostgreSQL,
da gibt es also in allen Clients etwas, was auf eine Shutdown-Benachrichtigung hört,
dann einen Dialog anzeigt, dass in x Sekunden/Minuten runtergefahren oder neugestrtet wird.
Nutzer haben noch eine Chance fertig zu machen und die Clienten beenden sich selbstständig, ohne hart die Verbindung und damit eventuell ungespeicherte Daten zu verlieren.
(wir nutzen das aber vorwiegend für Programm- und Datebankupdates)
OK, bei einem Restore ist eh alles egal, ob noch was ungespeichert war ... am Ende ist ja alles weg/geändert/überschrieben, worauf die Änderungen in den Clients basierten.
Und selbst wenn vor dem Ende noch gespeichert würde, dann würde es hier ja eh anschließend gelöscht/überschrieben.