Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 2 592 Pomógł: 445 Dołączył: 12.03.2007 Ostrzeżenie: (0%)
|
Ten dział chyba będzie najlepszy na taki temat...
Tak się ostatnio zastanawiałem: czy jest skuteczny, oparty na zdarzeniach, sposób na komunikację serwera z klientami? Obojętnie: język programowania, technologia, skrypt, cokolwiek. Mam na myśli taką przykładową sytuację: mamy serwis prezentujący jakieś informację aktualizowane na bieżąco, jednak zależne od zdarzeń. Ilość zdobytych punktów w meczu, czas najszybszego okrążenia, pojawienie się nowego konsultanta w serwisie, etc. Cokolwiek, co opiera się na zdarzeniu, a nie na czasie. Teraz, standardowo, każdy klient odpytuje serwer co zadany interwał czasu, czy przypadkiem dana rzecz się nie zmieniła (ajax). Rozwiązanie to przy np 10k użytkowników on-line powoduje sporo zbędnego ruchu i obciążenia. Jeśli dane pojawiają się w całkowicie losowych odstępach ciężko jest nawet ustawić sensowny interwał dla odświeżania. Sensowniej by było, gdyby aplikacje www u klienta "oczekiwały" na sygnał, informację z serwera w momencie aktualizacji danych. Oczywiście można zrobić taki ajaksowy systemik do aktualizacji, a po stronie serwera dobry cache (nawet statyczny plik), odpowiednie nagłówki, etc. - będzie działać. Jednak ciągle pozostaje te X zbędnych połączeń, które powstają, odpytują serwer dostają wielkie nic (304 Not Modified), zamykają się, czekają określony czas i znów męczą bez potrzeby serwer... Jedyne co znalazłem, to: Comet, Web Sockets, coś o BEA WebLogic Event Server Czy jest sensowna metoda na taki sposób komunikacji? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 113 Pomógł: 5 Dołączył: 12.09.2006 Skąd: Pruszków/Warszawa Ostrzeżenie: (0%)
|
Totalnie chamskim rozwiazaniem byloby wydzielenie oddzielnej maszyny tylko do "pingowania" na konkretne adresy. Niech pobieraja np. jakis hash i po problemie (w architekturze, ze to klient regularnie odpytuje serwer). Na pewno zmniejsza to ruch na glownym serwerze, ktory nie musi procesowac duzej ilosci zapytan, a moze zajac sie konkretnymi rzeczami.
Kiedy cos zmieni sie powaznie na glownym serwerze wowczas idzie info do tego swoistego proxy (np. zmienia sie hash) i wtedy klient otrzymujac inna odpowiedz niz poprzednia leci do glownego serwera. Tam juz w jakims cache czeka na niego nowa wersja contentu. To tak na szybko i chamsko, ide po kawe bo zasne. |
|
|
|
vokiel Komunikacja (powiadamianie) ServerSide -> ClientSide oparte na zdarzeniach 14.12.2009, 21:21:38
l0ud Spotkałem się ze wzorcem, który polegał na wywoływ... 14.12.2009, 21:43:08
abusiek CytatTeraz, standardowo, każdy klient odpytuje ser... 15.12.2009, 00:08:54
seth-kk flash + fms 15.12.2009, 00:19:51
Kocurro Ładny applet w javie i jedziemy Ja używam takiego... 15.12.2009, 11:21:57
vokiel Cytat(abusiek @ 15.12.2009, 00:08:54 ... 15.12.2009, 11:39:58 
seth-kk Cytat(vokiel @ 15.12.2009, 11:39:58 )... 15.12.2009, 21:34:58
paxton Moze cie zainteresuje APE Server
Wysyla dane bez... 15.12.2009, 17:43:13
vokiel Cytat(paxton @ 15.12.2009, 17:43:13 )... 15.12.2009, 18:47:43
Puciek http://twistedmatrix.com/trac/ chociaz napisanie p... 16.12.2009, 10:43:52 ![]() ![]() |
|
Aktualny czas: 10.06.2026 - 14:16 |