![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 23.09.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
pisze strone na której każdy odwiedzający ma mozliwość wypełnić formularz i na tej podstawie znaleźć przydatne informacje. Strone skonstruowałem w ten sposób aby odwiedzający wypełniał formularz, pobieram dane do php na ich podstawie piszę kwerende, łącze się z bazą i ją wykonuje, po czym php wyświetla wyniki. Problem w tym że u mnie czasem wykonanie najprostrzego zapytanie trochę trwa, a ze względu na temat strony spodziewam się dużej aktywności. Czy możecie mi poradzić na co zwrócić uwagę ![]() Z gory dziękuje za odpowiedz |
|
|
![]()
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 ![]() |
Równie dobrze mogłeś napisać: "Mieszkam nad rzeką. Czy grozi mi powódź?". Oczywiście brak wszelkich danych na temat: ile metrów na poziomem lustra wody, ile od brzegu, czy jesteś za czy przed wałami itp. Równie dobrze możemy wróżyć z fusów bo nie znamy hostingu, konfiguracji serwera, jakości skryptów, struktury bazy danych i tabel oraz typu silnika na jakim są tabele oparte. A poruszasz temat optymalizacji, który jest tematem, nomen omen, rzeką i jest zależny od ogromu czynników, których poza wspomnianymi można by jeszcze trochę wymienić. Każdy przypadek trzeba analizować indywidualnie. Sam obsługuję serwis, gdzie dziennie jest po kilka tysięcy userów i stoi on na mysql, a nawet nie sapnie, choć dla większych już sugeruje się rozwiązania oparte o postgresa lub oracle.
-------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 8 Dołączył: 13.09.2010 Ostrzeżenie: (0%) ![]() ![]() |
Odpal zapytanie np. w phpmyadmin i sprawdź czas jego wykonania. Może problem nie leży po stronie bazy.
Jeśli okaże się, że czas wykonania zapytania jest zbyt długo to sprawdź indeksy, użyj explaina, przeanalizuj zapytanie może ono jest błędne. -------------------- Web usability
Program Partnerski |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 23.09.2010 Ostrzeżenie: (0%) ![]() ![]() |
ok, rzeczywiście nie napisałem o hostingu ponieważ na razie mam konto na webuda(do sprawdzania czy działa), a hosting będę wybierał jak napiszę strone. Baza danych to około 20 kolumn. Zapytania są prostę w stylu select nazwa from 'dzial' where d1 like $_GET['a'] and d2 like $_GET['b']. Zzstanawiam się czy jeśli tak napiszę serwis to będzie działał wydajnie (pomijam sprawę hostingu) czy lepiej zacząc pisać w czymś innym (ważne aby było free również do zastosowań komercyjnych). Aha baza danych ma na razie około 5 tys rekordów ale docelowo około 200 tys.
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Zapytania są prostę w stylu select nazwa from 'dzial' where d1 like $_GET['a'] and d2 like $_GET['b']. To, że zapytania wyglądają na proste nie oznacza, że są szybkie. Użycie LIKE '%costam%' nie powoduje użycia indeksu. Będzie on użyty jeśli warunek będzie bez pierwszego %, czyli LIKE 'costam%'. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 03:28 |