Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: czas wykonywania zapytania mysql
Forum PHP.pl > Forum > PHP
maksk
Witam

Chcę wyłapać wszystkie slow queries z mojej strony i pojawił się pewien problem.
A mianowicie, czy jest jakaś funkcja php, która podaje ile trwało wykonanie ostatniego zapytania mysql?

Przeglądnąłem funkcje ze strony php.net i nic...
Wydaje mi się to strasznie banalnie.. ale mimo to nie wiem jak to zrobic tongue.gif
TomASS
A co to jest "slow queries" ? tongue.gif


Musisz sam sobie policzyć, ja to robię tak:
  1. <?php
  2. list($usec, $sec) = explode(' ',microtime());
  3. $querytime_before = ((float)$usec + (float)$sec);
  4. $tresult=mysql_query($query);
  5.  
  6. list($usec, $sec) = explode(' ',microtime());
  7. $querytime_after = ((float)$usec + (float)$sec);
  8. $exec_time = $querytime_after - $querytime_before;
  9. ?>
maksk
fakt

dzieki wielkie smile.gif
mariuszn3
w php5 możesz nawet prościej i wydajniej (może w php4 też..? smile.gif
  1. <?php
  2. $start = microtime(true);
  3. $result=mysql_query($query);
  4. $exec_time = microtime(true) - $start
  5. ?>
TomASS
Nie zapomnij co zwraca funkcja microtime() i na jakich php działa (php 3, php 4, php 5). Zobacz także przykład smile.gif
mariuszn3
Cytat(TomASS @ 2.08.2006, 14:48 ) *
Nie zapomnij co zwraca funkcja microtime() i na jakich php działa (php 3, php 4, php 5). Zobacz także przykład smile.gif

TomASS, spróbowałeś chociaż kod, który podałem (?)
Polska wersja manuala jest mocno nie aktulna (przynajmniej w przypadku tej funkcji)
Zobacz definicję microtime w anglojęzycznej wersji
Mój przykład będzie działał tylko pod php5
TomASS
Wybacz jeśli uraziłem smile.gif Nie było to moim celem smile.gif

Cytat
TomASS, spróbowałeś chociaż kod, który podałem (?)

Tak - oczywiscie, że spróbowałem smile.gif

Cytat
Polska wersja manuala jest mocno nie aktulna (przynajmniej w przypadku tej funkcji)

Zgadza się smile.gif

Cytat
Mój przykład będzie działał tylko pod php5

Tak jest smile.gif

Nie miałem zamiaru pisać, że piszesz nieprawdę smile.gif Widziałem także w przykładach Twój przykład smile.gif Chciałem tylko zakomunikować, żę przykłąd nr 1 będzie działał w większej ilości przypadków smile.gif

guitar.gif
mariuszn3
Już zdążyłem zauważyć, że lubisz pisać wyssane z palca bzdury na tym forum.. zastanawiam się tylko jaki masz w tym cel.. bo na pewno nikomu w ten sposób nie pomagasz..
TomASS
Jakoś nigdy pod swoimi postami nie widziałem Twojej odpowiedzi, że piszę, jak to nazywasz "wyssane z palca bzdury"... w prost przeciwnie - zawsze staram się sprawdzić to co piszę.
Cytat
bo na pewno nikomu w ten sposób nie pomagasz

Mogę dać Ci przynajmniej kilka tuzinów gdzie pomogłem..... (nawet w tym temacie)
LBO
Hmmm, Zend Framework, oferuje ciekawe narzędzie jakim jest Zend_Db_Profiler... bardzo przydatne - udostepnia bardzo wiele informacji na temat zapytań wykonanych poprzez Zend_Db (najdluzsze/najkrotsze zapytanie, ilosc zapytan, sumaryczny czas zapytan itp)...

Ech, zastanawiam się kiedy zrobią Adapter do mysql (bez uzycia PDO), widziałem w inkubatorze adapter MySQLi, moze w nastepnym release'ie smile.gif)
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.