Serwer TCP - zarządzanie połączeniami

0

Witam. Mam kolejne głupie pytanie.
Pytanie z serii co lepsze w kwestii wymiany danych klienci <--> server:

  1. Raz się połączyć i trzymać to połączenie
  2. Łączyć się za każdym razem jak chcemy coś wysłać.

Dane stringowe, json albo xml dla łatwej serializacji.
Jeden klient nie będzie wysyłał często danych. Bardziej biorę pod uwagę ilość klientów, bo jak będzie ich dużo to serwer może odbierać co sekundę.
Porady, sugestie?

PS.
Nie chciało mi się pisać swojego więc skorzystałem z gotowca, którego pobrałem z nugetów SimpleTCP
SimpleTCP(GitHub)

0

łączyć jak trzeba

0

Zależy do czego ten serwer się pisze. Jak to jest jakiś serwer do grania w gry np. FPS to wiadomo, że nie można sobie ustanawiać połączeń per akcja, ponieważ to bez sensu. W takim wypadku połączenia otwiera się raz i trzyma aż do zakończenia bądź zerwania sesji. No i takie serwery można w sumie też przełączyć na UDP, rezygnując z cech TCP, które mogłoby przyczynić się do spadku wydajności.

0

@grzesiek51114: Tak, czytałem już o tym i mniej więcej wiem na czym to polega. Wydaje mi się, że pojedynczy klient wysyła na tyle rzadko, że nie trzeba tego robić po UDP.
@abrakadaber: Tak myślę właśnie zrobić, ponieważ nie ma sensu trzymać połączenia jak nic się nie wysyła

1 użytkowników online, w tym zalogowanych: 0, gości: 1