Aktuelle Verbindungen (Gesprächsobjekte)
Die Kommunikation zwischen regisafe-Client und Server bzw. innerhalb des Servers läuft mithilfe sogenannter Gesprächsobjekte ab. Diese können im IQ-Monitor als Aktivitäten/Threads der überwachten IQ-Server und regisafe-Clients überwacht werden (siehe unter IQ-Monitor verwenden).
Häufigstes Szenario
Ein Client erstellt implizit durch eine Benutzeraktion ein Gesprächsobjekt (Anfrage-Objekt im Client-Prozess) und verbindet sich mit einem Dienst am Server, wodurch im Server-Prozess automatisch auch ein Gesprächsobjekt (Antwort-Objekt im Server-Prozess) erstellt wird. Die zwei Objekte können dann beliebig viele Daten in beiden Richtungen versenden, also der Client kann Daten (z.B. Suchkriterien) an den Server schicken, der Server bestimmte Aktionen (z.B. Datenbanksuche) durchführen und anschließend dem Client antworten (z.B. Suchergebnis übermitteln). Welche Aktion genau der Client vom Server verlangt (z.B. Suche, Daten speichern, Daten lesen, Datei liefern, Mail senden…), wird durch die sogenannte Aktion-ID (eine Zahl) festgelegt. Wenn die Aktion beendet wurde, werden beide Gesprächsobjekte gelöscht. Das beschriebene Szenario dauert in der Regel nur paar (Zehntel)Sekunden. Diese Art der Verbindung nennen wir dynamisch.
Andere Szenarien
Folgende andere Szenarien sind möglich:
- Der Client meldet sich von einer netzexternen Adresse an (Internet-Anmeldung): In diesem Fall wird die Verbindung nach dem Login nicht geschlossen, sondern während der ganzen Sitzung des Clients offen gehalten und erst bei der Abmeldung des Clients geschlossen (gelöscht). Diese offene Verbindung ermöglicht dem Server eine selbst initiierte Kommunikation mit dem Client, z.B. um Nachrichten von anderen Benutzern zu übermitteln oder die Bildschirmanzeige am Client zu aktualisieren. Diese ständig offene Art der Verbindung nennen wir statisch.
- Der Server muss dem netzinternen Client etwas mitteilen: In diesem Fall erstellt der Server-Prozess das Anfrage-Objekt und nach der Kontaktaufnahme erstellt der Client-Prozess das Antwortobjekt. So eine Kommunikation findet beim Zustellen der Benutzer-Nachrichten, ferngesteuerte Ausführung bestimmter Aktionen (z.B. Abmeldung beim Server-Neustart) oder Aktualisierung der Bildschirmanzeige am Client statt. Diese Verbindung ist auch eine dynamische Kommunikation, da sie in der Regel schnell beendet wird.
- Prozessinterne Kommunikation: Innerhalb des Server-Prozesses findet auch Kommunikation zwischen Diensten statt (z.B. wenn der Mail-Dienst eine Mail in der Datenbank speichern oder Mail-Anlagen im Dateispeicher ablegen muss.) In so einem Fall werden die Anfrage- und Antwortobjekte im Server-Prozess erstellt, beide praktisch zum gleichen Zeitpunkt. Diese Verbindung ist auch eine dynamische Kommunikation.