Od pewnego czasu przymierzam się do pewnego projektu. Rozpisując wszystko zacząłem się zastanawiać jak dobrze napisać serwer(najważniejszą część projektu). Serwer będzie konsolową aplikacją.
Pierwszym problemem jest główna pętla. W przykładach jakie do tej pory spotkałem jest coś na wzór:
do
{
// jakis kod
}while(exit != true)
To rozwiązanie wydaje mi się być zbyt proste aby było idealne :)
Drugim (największym problemem) jest zaprojektowanie klasy "sesji". Każde konto ma mieć możliwość obsłużenia M połączeń przychodzących i N wychodzących.
Przykładowo:
Użytkownik łączy się z komputera A i otwiera strony devpytania.pl i devblogi.pl pewne dane są trzymane w sesji(czas od pierwszego połączenia). Po chwili użytkownik ponownie łączy się, tym razem z komputera B. Otwierając jakaś stronę dane mają być wysyłane do podłączonych klientów (w tym wypadku komputera A i B)
Użytkownik <--> Serwer <--> NET
(Jasno opisane ? :>)
Połączenia powinny być trzymane w tablicach. czy w jakiś inny sprytny sposób?
Może projektowaliście kiedyś coś podobnego?