Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Czas wyszukiwania w bazie MySQL
Forum PHP.pl > Forum > PHP
inteltweaker
Czy ktoś się orientuje, w jaki sposób uzyskać wyświetlenie czasu operacji wyszukiwania w bazie MySQL? Coś takiego posiadają "profesjonalne" systemy wyszukiwawcze, również MySQL potrafi wyświetlić czas wykonania operacji po "SELECT". Niestety po lekturze manuala nie potrafię znaleźć sposobu na realizację w/w (może coś przeoczyłem?) Z góry dzięki za uwagi.
mike
[php:1:96e36b9137]<?php

$start = microtime();

$wynik = mysql_db_query();//tutaj masz jakieś zapytanie do bazy

echo microtime()-$start;

?>
[/php:1:96e36b9137]
Wyświetli czas wykonania jednego zapytania, jeżeli chcesz policzyć czas wykonania większej ilości zapytań : dodaj czasy.
halfik
Cytat
Wyświetli czas wykonania jednego zapytania, jeżeli chcesz policzyć czas wykonania większej ilości  zapytań : dodaj czasy.

Nie do końca: bo w tym czaie jest wywoływana funkcja mysql_db_query(), zapytanie jest wysyłane a i wynik też musi powrócić, funkcja musi zwrócić wzkaznik do wyniku or something (jak to tam jest zaimplementowane w PHPie nie wiem winksmiley.jpg ). Także ten czas niebędzie tak naprawdę czasem zapytania, ale inaczej chyba się nie da.
mike
Nie do końca się zgodzę, moim zdaniem funkcja zwróci wynik. I to wszystko będzie zmierzone. A obróbka tych wyników to co innego. Chyba chodziło o sam wynik. Tak czy inaczej różnica jest daleko po przecinku.
halfik
Cytat
Tak czy inaczej różnica jest daleko po przecinku.

To jest zgadywanie. Żeby wiedzieć ile wynosi różnica, trzba by porobić pomiary przy różnego rodzaju wielkościach tabel i różnego rodzaju zapytaniach. A po drugie: co jeśli sewer będzie obciążony i skrypt odpali pierwszą z funkcji od czasu, wykona zapytanie, a potem będzie musiał chwilkę poczekać na zasoby serwera nim odpali drugą funkcję czasu? Czy tutaj ta różnica nie może być rzędu np. 1s? winksmiley.jpg Nie ma co zgadywać. Generalnei różnica zawsze będzie, a to jak wielka zależy od wielu czynników.
orson
witam ...

1s questionmark.gif boshe ... to chyba 486 25 Mhz z 1000 zapytan ... to moze byc roznica jakis 0.0001-0.0009 ... az taka dokladnosc ci potrzebna ? po co questionmark.gif

cya
inteltweaker
Cały czas szukałem odpowiedniej funkcji php lub zapytania MySQL'owego upierając się, że stąd musi pochodzić informacja o czasie wyszukiwania. Nie wpadłem, aby zmierzyć czas przed, po i odjąć wartości. Ta metoda może rzyczywiście być nie całkiem precyzyjna, ale w większości przypadków wystarczy. Dzięki, pozdrawiam.
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.