![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 8 Dołączył: 28.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam, chciałbym zoptymalizować troche mój skrypt. Chodzi o cache'owanie zapytań. Nie mam pojęcia jak takie coś wykonać i na jakiej zasadzie to działa.
Czytałem troche o cache'owaniu, ale teraz to mi się w ogóle poplątało.. Jakieś klasy, obiekty w różnych poradnikach, i tu jest probelm z racji tego ze php uczyłem się z internetowych kursów to jeszcze mam małe pojęcie o programowaniu objektowym. Da się to napisać strukturalnie ? Jeśli tak prosze o wskazówki. Domyślam się, że coś takiego powinno wystarczyć:
Tylko co w funkcji (IMG:style_emoticons/default/biggrin.gif) Przykładowe zapytanie: Powiedzmy, że chce sprawidzić 50 osób z największa liczbą postów, wyciągam wszystkie dane o użytowniku, bo chciałbym je wyświetlić. Jest ok, tylko po co pobierać te dane cały czas? Wolałbym zeby dane były pobierane co np. 30 minut z bazy, a normalnie odczytywane z cache. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 709 Pomógł: 176 Dołączył: 24.10.2010 Ostrzeżenie: (0%) ![]() ![]() |
Wydaje mi się, że najprościej to hashuj sobie za pomocą np md5 zapytanie sql następnie sprawdzaj czy istnieje plik twoj_hash.php jeżeli tak to wczytuj go jeżeli nie to zapisz do tego pliku wynik zapytania.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 8 Dołączył: 28.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki za odpowiedz.
A co z czasem? Sprawdzam czy plik istnieje -> istnieje, odczytuje z pliki.. Fajnie, ale chce co 30 minut pobierać dane z bazy, a jak plik będzie istniał to będzie cały czas odczytywało z pliku ;< może ciastko ustawie kiedy utworzy plik, i bede sprawdzał czy ciastko istnieje. ;d taki pomysl wpadl mi do glowy ;p Ten post edytował Novy. 10.03.2012, 15:10:58 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 709 Pomógł: 176 Dołączył: 24.10.2010 Ostrzeżenie: (0%) ![]() ![]() |
Możesz do CRONA dodać skrypt uruchamiany co 30 minut który z katalogu cache usunie wszystkie pliki które leżą tam 30 minut lub dłużej.
Zamiast do CRONA możesz do swojego pliku index.php (chodzi o plik który jest odpalany z każdym żądaniem) dodać funkcję usuwającą zbędny cache. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Cytat Fajnie, ale chce co 30 minut pobierać dane z bazy, a jak plik będzie istniał to będzie cały czas odczytywało z pliku ;< Sprawdzasz czas modyfikacji pliku, jeżeli jest większy niż 30min, no to kasujesz plik, i tworzysz nowy. Każdy jeden system cache to ma. Poszukaj na forum, jest klika gotowych klas, chociażby ta nospora, która ma to czego ci potrzeba. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 23:33 |