Um Sitzungsverluste zu vermeiden, überwacht 4D den Ruhezustand der entfernten 4D Anwendungen.
Wenn ein Benutzer über eine entfernte 4D Anwendung mit einem 4D Server verbunden ist und sein Computer in den Ruhezustand geht, wird die Information an 4D Server gesendet. Sobald der Computer des Benutzers aufwacht, kann die entfernte 4D Anwendung ihren Ausführungskontext wiederherstellen.
Überprüfen des Status von Remote 4D Anwendungen
Der Ruhezustand einer entfernten 4D Anwendung wird im Fenster Serveradministration unter Benutzer > Aktivität angezeigt:
Eine andere Möglichkeit, schlafende entfernte 4D Anwendungen zu erkennen, ist die Verwendung des Get process activity Befehl:
$sleepingRemotes:=Get process activity (Sessions only).sessions.query("state = :1"; "sleeping")
ARBEITSWEISE
Im Schlafmodus werden alle von der entfernten 4D-Anwendung verbrauchten Ressourcen ihr weiterhin zugewiesen, um beim Aufwachen ihren Arbeitszustand wiederherzustellen. Prozesse, Lizenzen, geöffnete Transaktionen, gesperrte Datensätze usw. werden erst freigegeben, wenn die entfernte 4D-Sitzung endet.
Um zu verhindern, dass Sitzungen zu lange im Schlafmodus verbleiben, schließt 4D Server automatisch alle entfernten 4D Sitzungen, die länger als 48 Stunden im Schlafmodus waren.
Wenn Sie dieses Zeitlimit je nach Nutzung durch Ihren Kunden genauer steuern möchten, können Sie den Befehl SET DATABASE PARAMETER Befehl mit dem Selektor Remote connection sleep timeout verwenden. Beachten Sie, dass die Zeitüberschreitung in Sekunden angegeben wird und der Wert nicht gespeichert wird, so dass Sie die Zeitüberschreitung beim Neustart selbst festlegen müssen. Der Wert kann sogar auf dem entfernten 4D und 4D Server unabhängig voneinander eingestellt werden, da er nur auf der Seite des 4D Servers für alle entfernten 4D Anwendungen wirksam wird.
Die Überprüfung des Ruhezustands von remote 4D Anwendungen wird alle 5 Minuten auf dem 4D Server durchgeführt.
Beispiel
defaultTimeout:=Get database parameter(Remote connection sleep timeout) // 172800 seconds by default
)
SET DATABASE PARAMETER (Remote connection sleep timeout; 7200 // Set to 2 hours
Hinweis: Die Verwaltung des Schlafmodus ist auf der Legacy-Netzwerkebene nicht verfügbar.