kkuubbaa88
27.06.2008, 14:28:14
witam
mam strone w ktorej jest pare rankingow oraz menu... chcialbym to wszystko zrobic na bazie mysql... problem taki, ze mam chyba limit przypadajacy na jednoczesne zapytania = 10... i teraz co moge zrobic, aby ich jakos mniej przypadalo na zaladowanie strony ? czy cos da podzielenie na iframy i ladowanie jako kawalki stron w te miejsca ? to cos pomoze ? czy sa jakies inne możliwosci ?
kwiateusz
27.06.2008, 14:30:52
moze uproszczenie/polaczenie zapytan?
Z powietrza to tak trudno zgadnac
Zawsze mozesz je cachowac i raz na jakis czas tylko odświezac go
Shili
27.06.2008, 14:30:59
Zmniejszenie ilości zapytań zależy od bazy danych. Jeśli rankingi wszystkie masz w jednej bazie, to możesz je wybrać jednym zapytaniem, jeśli porozsiewane po osobnych tabelach będzie gorzej (ale też będzie to zapewne możliwe, chyba że w ogóle baza jest z księżyca wzięta

). Podobnie jest z menu (nie za bardzo widzę sens robienia menu na bazie danych)
cojack
27.06.2008, 15:22:27
Można zastosować cachowanie bazy... nie wiem, optymalizacje bazy...
sowiq
27.06.2008, 15:27:24
Cytat(Shili @ 27.06.2008, 15:30:59 )

[...]nie za bardzo widzę sens robienia menu na bazie danych
Jeśli jest to strona z możliwością edycji menu z poziomu CMS, to jak najbardziej jest to dobre rozwiązanie. Tylko w takim przypadku wypadałoby zrobić jakieś cache'owanie wygenerowanego pliku, niż to mielić za każdym razem od nowa.
kkuubbaa88
27.06.2008, 15:32:48
a jak sie robi takie cuda z cachowaniem bazy ?
kwiateusz
27.06.2008, 15:40:23
kilka technik:
jedna z prostszych pobierasz z bazy, renderujesz cala strone i zapisujesz ja do pliku np html i przy nastepnym wejsciu kogos nie czytasz z bazy a sprawdzasz czy cache jest i juz wyrenderowana strone mu podsyłasz
albo robisz zapytanie konwertujesz wynik do czego potrzebujesz np tablicy, serializujesz ja gdzies na dysk zapisujesz i potem przy wejsciach ludzi czytasz juz wyniki z dysku
aktualnie to mi przychodzi na mysl
kkuubbaa88
27.06.2008, 23:40:24
rozumie, ze to jest o wiele lepsze wyjscie niz tak za kazdym razem pobierac dane z bazy ? a ktory sposob lepszy ? chyba ten z danymi zapisanymi do czegos tam... tylko do czego ? i w jaki sposob ?
sowiq
28.06.2008, 02:18:16
Tak, jak napisałem wyżej:
- menu jest zmieniane raczej rzadko. Dlatego bez sensu jest generować je na nowo za każdym razem jak ktoś wejdzie na stronę. Wystarczy to zrobić tylko wtedy, kiedy jest edytowane przez admina, zapisać wynik do pliku, a później załączać ten plik na stronę.
W zależności od działania strony takie operacje można robić w kilku miejscach. Do tego, jeśli masz jakieś liczniki odwiedzin itp, a masz duże limity na zapytania sql - możesz sprawę rozwiązać za pomocą plików.
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.