Hallo,
ich habe ein paar Fragen zum korrekten Umgang mit der Register Variable in Verbindung mit einem Server Socket, der mehrere Client-Verbindungen unterstützen soll.
Ich ziehe grundsätzlich die IP und den Port in Kombination als Identifikationsmerkmal der jeweiligen Clientverbindung heran.
Um Daten zu puffern nutze ich den Puffer der RegVar, allerdings organisiere ich ihn als JSON-String, um Teildatenpakete mehrerer Clientverbindungen nach Verbindung geordnet im Puffer verwalten zu können. Spricht etwas dagegen oder gibt es eine schlauere Lösung?
Ich nutze keine Semaphore, gehe also davon aus dass die RegVar unter keinen Umständen mehrere Instanzen des Skripts gleichzeitig ausführt. Korrekt?
„Sessions“ verwalte ich zudem als Variablen. Darin speichere ich, ebenfalls als JSON-String, so Dinge wie den letzten Zugriffs-Zeitstempel und weitere statische Zustandsinformationen. Der Ident der Variablen ist ein Identifikations-String aus Client-IP und Client-Port, um die Session für eine Verbindung später wiederfinden zu können.
Spricht etwas gegen diese Vorgehensweise? Ich weiß ja, dass ich keine RegVar-Daten in Variablen puffern soll, aber das mit den Sessions sollte kein Problem sein, oder?
Bin sehr interessiert an konstruktiver Kritik!
Ach ja, noch etwas: Ich nehme mal an, so Dinge wie Verbindungsaufbau und -abbruch kann ich bei Server Sockets weder detektieren, noch serverseitig steuern, oder?
Danke & VG