Witam, stworzyłem bardzo prosty czat z pomocą jQuery i technologii Ajax.
Polega on na podwójnym wywołaniu $.ajax, raz dla dodawania do bazy nowych wiadomości, raz dla wczytywania pięciu ostatnich rekordów.
Teoretycznie wszystko ok- wiadomości się wyświetlają- jednakże problem leży w dwóch rzeczach:
- wiadomości wyświetlają się w nieregularnych odstępach czasu (czasem od razu, czasem dopiero po kilku(nastu) sekundach)
- chat wywołuje niesamowite obciążenie hostingu (do tego stopnia, że hostinger.pl zablokował mi całą domenę :D)
W związku z powyższym nie mogę zaprezentować przykładu strony, posłużę się więc wyłącznie kodem, przy czym pozwolicie, że gwoli przejrzystości użyję wklej.org:
skrypt.js - plik, który odpowiada za połączenie z ajaxem:
http://wklej.org/id/2649954/
view.php - odpowiada za realizację cześci skryptu odpowiadającej za wyświetlanie rekordów:
http://wklej.org/id/2650022/
add.php - realizuje proces dodawania danych do bazy:
http://wklej.org/id/2650032/
dla ciekawych index.php ze szkieletem strony:
http://wklej.org/id/2650040/
Zwróćmy uwagę na plik skrypt.js, czy problemem nie wywołanie funkcji raz w document.ready, a później znów co sekunda w viewAjax()?
W jaki sposób zmienić kod aby wciąż posiadał podobną funkcjonalność, nie gwałcąc tym samym pamięci serwerowni?
Pozdrawiam.