O
OBI
Gast
Hallo zusammen,
ich habe mich jetzt auch mal an java ran gewagt und habe zu aller erst mal einen chat mit mehreren personen erstellt. dieser läuft auch wunderbar also das connecten und das chatten so jetzt kommt ich aber auch schon zu meinem problem und zwar wenn jetzt sagen wir ein client die verbindung kappt und das nich absichtlich per klick auf nen chat beenden button sondern wenn sagen wir das netzwerk kabel gezogen wird oder die verbindung sonst ein problem hat, wie kann der server dann feststellen, das der client nicht mehr da ist?
im moment ist es so, das die systemauslastung beim server hoch geht wenn der client weg ist und das wars. dieses möchte ich aber unterbinden und so regelmäßig checken ob der client noch da is damit wenn dieser nicht mehr da ist eine meldung erscheinen kann "der client ist weg" und die verbindungen und der socket geschlossen werden kann.
ich habe mir jetzt ein keepalive system überlegt in dem der server immer eine botschaft an den client schickt und wenn die nich ankommt muss der server weg sein und umgekehrt das gleiche. leider funktioniert das nicht so wirklich gut da es dann schon zu problemen kommt wenn ein packet zu spät verschickt wird etc. außerdem ist dieses verfahren sehr kompliziert.
so nun nochmal meine frage in kurzform: ist es möglich, dass der server bzw. auch der client überprüft ob wirklich noch eine verbindung zum jeweils anderen besteht?
danke schonmal für eure hilfe
mfg
obi
ich habe mich jetzt auch mal an java ran gewagt und habe zu aller erst mal einen chat mit mehreren personen erstellt. dieser läuft auch wunderbar also das connecten und das chatten so jetzt kommt ich aber auch schon zu meinem problem und zwar wenn jetzt sagen wir ein client die verbindung kappt und das nich absichtlich per klick auf nen chat beenden button sondern wenn sagen wir das netzwerk kabel gezogen wird oder die verbindung sonst ein problem hat, wie kann der server dann feststellen, das der client nicht mehr da ist?
im moment ist es so, das die systemauslastung beim server hoch geht wenn der client weg ist und das wars. dieses möchte ich aber unterbinden und so regelmäßig checken ob der client noch da is damit wenn dieser nicht mehr da ist eine meldung erscheinen kann "der client ist weg" und die verbindungen und der socket geschlossen werden kann.
ich habe mir jetzt ein keepalive system überlegt in dem der server immer eine botschaft an den client schickt und wenn die nich ankommt muss der server weg sein und umgekehrt das gleiche. leider funktioniert das nicht so wirklich gut da es dann schon zu problemen kommt wenn ein packet zu spät verschickt wird etc. außerdem ist dieses verfahren sehr kompliziert.
so nun nochmal meine frage in kurzform: ist es möglich, dass der server bzw. auch der client überprüft ob wirklich noch eine verbindung zum jeweils anderen besteht?
danke schonmal für eure hilfe
mfg
obi