![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 24.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam pytanko. Obecnie pisze aplikację, która pobiera wiele rekordów około 1000 przetwarza je tworząc dla każdego rekordu po 5-10 informacji w tablicy. Wszystko jest sumowane itp. Niestety czas wykonywania skryptu wynosi powyżej 60s. (jest to nieakceptowalne oczywiście). Czy istnieją jakieś metody optymalizacji takich operacji. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 450 Pomógł: 84 Dołączył: 27.11.2008 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Jest na to wiele sposobów, optymalizuj same zapytania, obowiązkowo cache-uj ich wyniki, wprowadź stronicowanie.
Ten post edytował sniffer32 24.08.2009, 19:43:10 |
|
|
![]()
Post
#3
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
@SoSiker: nie mam sily wrzeszczec na ciebie, ale moze raczyl bys pokazac CO robisz i JAK to robisz, bo takto mozna ci odpowiedziec: popraw SQL, rob ile sie da w bazie, joinami itp.
-------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
1000 rekordów - 60 sek? Coś namieszałeś chyba.
1000 rekordów dla mysql to nic... -------------------- Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 24.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
Właśnie zdaje sobie z tego sprawy, że te 1000 rekordów to nie wiele (nie są one nawet związane jakimiś LEFT JOINAMI) :/ dopiero potem dzieją się różne rzeczy. Chodziłoby mi o zastosowanie Cache, jak miałbym to zrobić?
PS: proszę na mnie nie krzyczeć ![]() |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
No to jak mamy Ci pomóc? O.o
-------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Bez kodu to my możemy jedynie z fusów wróżyć co nie tak. Swoją drogą co ten kod robi, bo ja dziś sam pisałem zapytanie, które mialo połączyć dwie tabele (pierwsza 400 rekordów, druga ponad 1000) i od razu mi robiło update jedne kolumny pierwszej tabeli wartościami z pewnej kolumny 2 tabeli i jakoś nie trwało to specjalnie długo... Tyle to chyba operacje na ogromnej ilości plików trwają. Sam zajeżdżałem bibliotekę GD tworząc obrazki do własnego świata ( custom map w GoogleMaps API ). Ale to było sumarycznie kilkadziesiąt tysięcy plików jpg 256x256 i skrypt chodził kilkanaście minut. Po prostu się tak długi czas działania na bazie w głowie nie mieści...
-------------------- 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
#8
|
|
Grupa: Zarejestrowani Postów: 419 Pomógł: 42 Dołączył: 12.08.2008 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Po pierwsze po co nam kod php jak mieliśmy Ci pomóc w SQL'u ? Po drugie z tego się nie da niczego konkretnego wyciągnąć bo wygląda to tak jakbyś nam z całego dania które mamy zjeść dał tylko widelec czy talerz. Pokaż wszystkie potrzebne zapytania sql które są wykonywane w trakcie tych 60 sekund. Mi się jednak osobiście zdaje, że zwracasz 1000 wyników i potem dla każdego z nich robisz oddzielne zapytania (nawet kilka niż jedno) które wysyłasz przez php.
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 419 Pomógł: 42 Dołączył: 12.08.2008 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Może źle zrozumiałeś moją ostatnią wypowiedź. By pomóc Ci przy zapytaniach SQL potrzebujemy...SQL'a ? Ja nie będę rozgryzać jakie tam magiczne metody są php które mi niby ormem tworzą zapytania. Prosimy zatem grzecznie - choć dziw, że jeszcze się prosić musimy - o ZAPYTANIA SQL.
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 29.06.2025 - 21:39 |