Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Optymalizacja zapisywania danych do bazy danych przez AJAX, Odpisze ktoś mądry?
rugby
post
Post #1





Grupa: Zarejestrowani
Postów: 61
Pomógł: 1
Dołączył: 21.05.2009

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


Tworzę aplikację RIA, która działa w przeglądarce po stronie klienta i co jakiś czas zapisuje dane (np. położenie paneli) w wybranej tabeli w bazie danych, wysyłając je metodą POST przez AJAX. Biorąc pod uwagę, że równocześnie z aplikacji może korzystać kilkaset osób, jak zoptymalizować wydajność serwera WWW i bazy danych?

1. Tabela, do której zapisywane są dane, powinna mieć blokowanie na poziomie wiersza (a nie całej tabeli), zgadza się?
2. Trzeba zachować kolejność zapisywania, żeby pakiet, który został wysłany wcześniej, a dotarł później, nie nadpisał pakietu wysłanego w międzyczasie, tak?
3. Czy wywoływać zapis danych metodą POST w momencie zmiany położenia paneli (ludzie mogą bawić się panelami, generując dużo zapisów w jednym czasie), czy np. co 5 s. (niezależnie od tego czy użytkownik rusza panele są generowane zapisy)?
4. Na co jeszcze zwrócić uwagę?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Ustaw by ów AJAX działał tylko przy określonych zdarzeniach, lub określonym czasie. Nie ma sensu co chwilę wywoływać wysyłki. Zrób tak, że AJAX wywołuje się na chwilę przed zamknięciem okna, na chwilę przed opuszczeniem strony (ktoś może przypadkowo kliknąć jakiś link), na puszczenie w drag&drop. Każde z nich niech tworzy znacznik czasowy(czy tam setInterval). Ileś minut po owym znaczniku wywołuje się zapis automatyczny i ustawia on następny punkt zapisu w przyszłości. W ten sposób zapisy automatyczne nie będą (a przynajmniej nie powinny) ze sobą kolidować
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 28.12.2025 - 03:38