Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Socketsprobleme. Manchmal Verbindungsfehler (Server hackt) (https://www.delphipraxis.net/134768-socketsprobleme-manchmal-verbindungsfehler-server-hackt.html)

Jackie1983 28. Mai 2009 13:48


Socketsprobleme. Manchmal Verbindungsfehler (Server hackt)
 
Servus,

habe mir eine kleine Client / Server Anwendung mit den Sockets programmiert.
Soweit ist auch alles fertig. Jetzt teste ich gerade meine Anwendung.

Lokal starte ich einen Server und 20 Clients. Dann kommt es machmal vor das die Clients die Verbidnung trennen und wieder neu aufbauen.

Jetzt ist mir aufgefallen das der Server am Anfang ganz gut arbeitet auch mit 20 Clients.
Nach einer Zeit x melden sie die Clients neu an und der Server "hackt".
Der Server macht nichts anderes als Jobs in einem Thread anzunehmen und diese zu verarbeiten bzw. an einer Klasse weiterzugeben.

Aufgefallen ist mir auch gerade das wenn ich den Server beende und neu starte melden sich die Clients neu an.
Nach einigen Sekunden hängt der Server und bekommt sich auch nicht mehr ein.

Schwer zu erklären,
aber der Client senden einen Key. In der Readmethode des Servers bekomme ich den Befehl das der Client sich erfolgreich angemeldet hat (Key).
Also rufe ich aus der Readmethode Synchronize(fOnClientConnect); auf, eine Methode aus meiner Klasse.
Dort schaue ich in einer SQL Datenbank ob daten für den Client da sind, wenn ja schicken.
In der Zeit wo Synchronize(fOnClientConnect) aufgerufen wird kann der Server ja keine weiteren Anfragen entgegen nehmen.

Hoffe das ist soweit klar wie ich das meine, weis nicht wie ich es besser beschreiben soll.
Wie kann ich das Problem lösen? Nicht alle Jobs werden in den JobThread weitergegeben. Vorher wird geschaut ob es ein wichtiger System befehl ist(Ping Pong Key) und wird direkt verarbeitet, deswegen vielleicht auch die Probleme mit Synchronize(fOnClientConnect)

mfg

Jackie1983 28. Mai 2009 15:46

Re: Socketsprobleme. Manchmal Verbindungsfehler (Server hack
 
hmmm denke das ich den Fehler gefunden habe, mal schauen.
Hatte ein Synchronize zu viel bzw wo es unnötig war...


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:56 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz