Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Czat AJAX a obciążenie serwera
1010
post
Post #1





Grupa: Zarejestrowani
Postów: 749
Pomógł: 37
Dołączył: 3.10.2006

Ostrzeżenie: (0%)
-----


Witam,
w jednym z moich serwisów zamierzam wprowadzić czat, czyli możliwość komunikowania się z osobami, które są obecnie zalogowane. Chciałbym oprzeć to na jQuery. O ile dobrze do tego podchodzę to powinienem zrobić jakąś tabelkę w bazie, zapytanie które wyciąga aktualne konwersacje itp. Całość co jakiś czas będzie automatycznie wywoływana przez jQuery (AJAX). Pytanie tylko, czy przy dość małym czasie odświeżania takie coś nie zajedzie serwera?

Teraz takie moje teoretyczne rozważania:
Biorąc pod uwagę, że na stronie siedzi 200 osób, dla każdej z nich powiedzmy co 2 sekundy zostanie wywołane automatyczne zapytanie, które będzie sprawdzało czy nie przyszły jakieś wiadomości. Czyli wychodzi średnio 100 zapytań na sekundę. Jest to stosunkowo dużo, porównując całość do sytuacji w której nie ma czata i osoba przeładowuje stronę raz na jakiś czas (powiedzmy średnio do 20-30 sekund).

Jak takie coś ma się do wydajności? Czy oparcie tego czatu ba bazie danych jest dobrym rozwiązaniem?

Myślałem też, żeby zrobić tak, że w przypadku gdy osoba nie prowadzi konwersacji (czyli przez jakiś czas nie przychodziły wiadomości), żeby czas odświeżania wydłużyć do np. 10 sekund, a skracać powiedzmy do 2s. tylko w przypadku, gdy jest obecna rozmowa.

Kolejna rzecz o którą chciałbym zapytać, to przy jakim czasie odświeżania rozmowa jest dość płynna? Czy np. 5 sekund jest już zbyt dużym czasem, żeby można było swobodnie porozmawiać?



Oczywiście nie oczekuję na odpowiedzi w stylu "zachciało Ci się czata to kup porządny serwer, który sobie z tym poradzi"
Chodzi mi raczej o same podejście, czyli jak to zrobić żeby było to najbardziej optymalne.

Z góry dziękuję za jakiekolwiek wskazówki i naprowadzenia.


--------------------
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 16:35