Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Rządanie z serwera do usera
Forum PHP.pl > Forum > PHP
golab
Witam,

Chciałbym poznać Waszą pogląd na następującą kwestię:


Mam sobie bazę danych, jakiś użytkownik ją modyfikuje.
Może modyfikować raz na 5 minut, raz na 30 sekund lub raz na tydzień.


Jak zrobić, aby inny użytkownik na bieżąco śledził te modyfikacje?


Sposób, który ja znam, to stworzenie zapytania w JavaScript przy pomocy XMLHttpRequest();, tj.:
xmlhttp.open("GET", "sprawdz.php"+param, true);
xmlhttp.send();
które sprawdzałoby serwer np co 30 sekund.


Czy da się to zrobić jakoś sprytniej, aby tak nie obciążało serwera?
Jeżeli użytkownik dokona zmiany raz na tydzień, to niepotrzebnie wyśle 2*60*24*7 = 20 000 zapytań, jak będę miał 50 użytkowników, to będzie masakra.

To ogólne pytanie - proszę o wskazanie drogi, ze szczegółami sobie poradzę smile.gif

PS

jak ta kwestia rozwiązana jest w chatach internetowych przez php i shoutboxach?
luniak
Podejrzewam że chodzi Ci o działanie aplikacji na zasadzie push, można to uzyskać np. za pomocą websocket, niestety takie rozwiązanie nie ejst kompatybilne ze wszystkimi przegląarkami smile.gif -> http://socketo.me/

Ciut bardziej kompatybilną, coc niekoniecznie lepszą, metodą jest COMET ->http://gonzalo123.com/2011/03/14/real-time-notifications-with-php/

Oczywiście oba linki to tylko przykłądy smile.gif Jest sporo różnych bibliotek do obu tych rozwiązań
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.