Jak zoptymalizować ilość zapytań SQL?

Tutaj udzielane jest wsparcie przy problemach związanych z instalacją, konwersją, aktualizacją oraz użytkowaniem phpBB 2.0.x.
pcw291
Posty: 47
Rejestracja: 14 sierpnia 2008, 19:29

Jak zoptymalizować ilość zapytań SQL?

Post autor: pcw291 » 01 listopada 2008, 12:16

Witam,
W jaki sposób mogę zoptymalizować ilość zapytań SQL w czasie przechodzenia do konkretnego działu?
Jest duży problem, ponieważ gdy na moim forum wchodzi się w jakiś dział, generowanie strony wynosi (akurat w tym momencie storna załadowała się szybko, bywa jednak, ze czas wynosi nawet 8 sekund):

Strona wygenerowana w 0,1 sekundy. Zapytań do SQL: 63

Wydaje mi się, że jest to dość duża ilość, przy małej ilości modyfikacji na forum. Jest to forum phpBB by Przemo, wszystkie bajery powyłączane, a forum przema (gdzie jest wiecej wlaczonych jego dodatków) generowanie strony ma na poziomie:

Strona wygenerowana w 0,32 sekundy. Zapytań do SQL: 11

Jak mogę ograniczyć wykonywanie zapytań do SQL?

Awatar użytkownika
daroPL
Zasłużony
Posty: 4564
Rejestracja: 24 czerwca 2005, 13:36
Lokalizacja: Poznań
Kontakt:

Re: Jak zoptymalizować ilość zapytań SQL?

Post autor: daroPL » 01 listopada 2008, 13:04

Jakie mody zainstalowałeś na forum?

pcw291
Posty: 47
Rejestracja: 14 sierpnia 2008, 19:29

Re: Jak zoptymalizować ilość zapytań SQL?

Post autor: pcw291 » 01 listopada 2008, 13:59

Często wywalało błąd 500, więc ustawiłem minimalną konfiguracje ustawień w PA, dodałem tylko Kto jest ONLINE (które i tak zmodyfikowałem, wywaliłem liste online i kolorowe grupy), doinstalowane modyfikacje to:
- formularz kontaktu;
- google sitemaps;
- spider friendly
- arcade mod (gry flash na forum)


Co do ostatniego, gry są włączone jedynie dla aktywnych uzytkownikow, malo osób w to gra, watpie jednak, ze to to zżera tyle zapytań i zawala serwer, dodatkowo sam pzreprowadziłem pare zmian, mianowicie:
- wywaliłem całkowicie statystyki, listę online, kolorowe grupy, czaty, lista ekipy, szukajka wyłączona (funkcja zminimalizowana wyłacznie do wyszukiwania postow uzytkownika poprzez jego profil), opis/emotki tematu wylaczone, wysylanie awatarów/zdjęć/albumów na serwer wyłączone, galeria wyłączona, gzip włączone (gdy wyłączam nie daje zadnych nadzwyczajnie duzych efektów), mail przez forum zminimalizowany wylacznie do powiadomien, wiec forum jest okrojone, dodatkowo wielkiego ruchu nie ma, gora kilkanascie osob online jednoczesnie, a bledy 500 pojawiaja sie nawet przy glupim logowaniu. Serwer stoi u neteasy.pl, prócz tego forum nie ma tam nic duzego, malutkie forum postawione na punbb, do tego blog, na ktorych panuje mniejszy ruch niz przewiduje norma. żadnych dodatkowych bajerów jak dodatkowe pola w profilu, duza ilosc obrazkow czy czegos takiego nie ma, okrojone forum wylacznie do podstaw, do tego instalki sluzace indeksowaniu - tyle.

Od kilku dni juz szukam sposobow na przyspieszenie, ja juz nie wiem co moge zrobic, tak wiec licze na wasza pomoc, support przema nie jest zbytnio pomocny, tak wiec wole zapytac tutaj

Awatar użytkownika
Betrayal
Zasłużony
Posty: 649
Rejestracja: 18 marca 2006, 16:15
Lokalizacja: Otwock pod W/w

Re: Jak zoptymalizować ilość zapytań SQL?

Post autor: Betrayal » 01 listopada 2008, 15:03

[ Download ]

Świetny mod pozwalający na zmniejszenie liczby zapytań, sam z niego korzystałem i polecam :)

pcw291
Posty: 47
Rejestracja: 14 sierpnia 2008, 19:29

Re: Jak zoptymalizować ilość zapytań SQL?

Post autor: pcw291 » 01 listopada 2008, 15:12

Dzięki za linka, niestety z tego co widzę, już na samym początku z pierwszym plikiem są problemy, kod się różni, nie ma wskazanych linii, nie mam czasu się z nim bawić, podejrzewam, że ktoś musiałby go przerobić pod znacznie zmodyfikowany skrypt przema.

shunkiano
Posty: 126
Rejestracja: 17 czerwca 2008, 07:47
Lokalizacja: Gdańsk
Kontakt:

Re: Jak zoptymalizować ilość zapytań SQL?

Post autor: shunkiano » 01 listopada 2008, 15:35

Jeżeli nie możesz znaleźć całego kodu który masz znaleźć szukaj po kawałkach... np. masz znalesc

Kod: Zaznacz cały

$a = $_POST['b'];
if (a == 0) { 
echo('abc');
} 
To spróbuj znaleźć samo $a

Zablokowany

Wróć do „Pomoc”