Aktualisierung

Schmuggler

Mitglied
Hallo zusammen,
seit kurzer Zeit versuche ich mich nun auch ein bisschen an Netzwerkporgrammierung.
Es sieht so aus. Mehrere Clients ein Server naja wie immer eigentlich.
So wenn sich nun auf dem Server etwas ändert eine Datei z.B. dann sollen alle Clienten darauf reagieren, der Zeitraum ist eigentlich nicht so wichtig nur zeitnah sollte es schon passieren.
Jetzt frag ich mich, ob jeder Client einmal eine Verbindung zum Server herstellt, die erst mit
beenden des Clienten auch beendet wird. Sodass der Server ja theoretisch zum Clienten sprechen kann.
Oder ob man lieber in gewissen Abständen regelmäßig eine Verbindung aufbaut und prüft ob sich was verändert hat.
Wie ist das dann mit der Netzwerkbelastung...
nunja viele Fragen, würd mich über Antworten freuen :)
Schmuggler

Achso ehh ich mach das jetzt mit Socket, weiß nicht wie das mit anderen Sachen so ist, deshalb erwähn ichs nochmal...
 

Empire Phoenix

Top Contributor
Kommt drauf an.
Bei tcp hast du generell einen gewissen overhead durch die interne Verbindunserhaltung, je anch anzahl der clients kann das schon Leistung kosten. (denke so ab 2000 wirds interessant).
Kommt jetzt auch darauf an wie zeitnah, bei 10 minuten würde ich sagen neu aufbauen ist einfacher, bei 10 sekunden sehe ich das anders. Bei ständiger Verbindung müssen die Clients nicht abfragen was los ist, der Server kann einfach "sofort" die Nachricht pushen.

Die Netzwerkbelastung würde ich als ignorierbar ansehen, weil nichts wirkliches übertragen wird, entscheidender ist hier wie der Server damit klarkommt (Verschlüsselung? Login(Datenbank auf die jedesmal gewartet werden muss)?).

Speziell Soket währe ich vorsichtig ich emfpehe hier mal Java nio, weil du bei sockets einen Thread pro bestehender Verbindung brauchst und einige hunderte davon ein System schon etwas belasten können, bei wenigen Clients spricht auch hier nichts groß dagegen)
 

Neue Themen


Oben