Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [AJAX][PHP]chat ajax'owy - jak działa
Forum PHP.pl > Forum > Przedszkole
uki8877
Witam

Mam pytanie do bardziej doswiadczonych kolegow programistow odnosnie tego jak działa chat, tzn jak on jest zrobiony

Jak wysylamy wiadomosc to trafia ona do bazy danych ,a ta baza jest wyswietlana w jakims okienku, to rozumiem.

Jednak nurtuje mnie pewien fakt, jak ja wysle taka wiadomosc to od razu pojawia sie ona u osob ktore tez siedza na tym chacie, a wiec musi istniec funkca ktora np poprzez setinterval w JS co sekunde sprawdza czy jest jakas nowa wiadomosc ,a jesli tak to ja wczytuje do listy. Czyli co sekunde wysylane jest zapytanie do bazy danych i tutaj moje pytanie - zakupilem serwer w nazwa.pl ,taki abym mogl sie uczyc programowac , no i mam tam pewne limity dzienne ,np

Liczba połączeń do baz danych liczona na serwer w ciągu doby - limit 250tys (kazde sprawdzenie czy jest nowa wiadomosc to polaczenie z BD, jesli sprawdzamy co sekunde to w ciagu godziny jeden uzytkownik polaczy sie 3600 razy).

Moim zdaniem to duzo przy wiekszej licznie osob, tak wiec ten limit jest zbyt maly, a jesli chcialoby sie pod ten serwer podczepic inne aplikacje to juz w ogole nie starcza.

Tak wiec podpowiedzcie czy jest jakas opcja zeby czat nie obciazal tak BD ?

Pozdrawiam.

nikt nie pomoze ?smile.gif
Comandeer
Powiedziałbym: long-polling a jeszcze lepiej – Web Sockets. Żądania co sekundę to się robiło wieki temu wink.gif
Johnas
WebSockety są piękne smile.gif Można w nich wykorzystać funkcję onConnect, onDisConnect oraz onMessage
https://www.youtube.com/watch?v=caCQzK4ghqI

a ajax działa na takiej zasadzie że w momencie kiedy ktoś pisze w tle robi zapytanie, a wyświetlanie działa na takiej zasadzie że sprawdza zapytaniem czy jest wiadomość co pewien okres czasu (który sami zdefiniujemy) przez co obciąża przeglądarkę oraz serwer. Poprawcie mnie panowie jeśli się mylę smile.gif
uki8877
Panowie, dzięki za odpowiedzi, trochę mnie uspokoiliscie smile.gif


Dałoby radę podrzucić jeszcze jakieś materiały z których da radę ogarnąć te sockety?
Johnas
Tu masz nawet cały serwer pod czat smile.gif

https://github.com/Devristo/phpws
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.