3. #Plan Prezentacji
1. Czym jest profilowanie
2. Wymagania
3. Możliwości profilera
4. Jak to działa?
5. Konfiguracja
6. Co ważne?
7. Profiler vs debug bar
4. #1. Czym jest profilowanie
Jest to forma dynamicznej analizy programu.
Polega na badaniu zachowania program używając
informacji zdobytych podczas jego wykonywania.
7. #4. Jak to działa?
1. Xdebug tworzy migawkę (snapshot)
2. Zapisuję ją na dysku jako plik do wskazanego folderu z
rozszerzeniem .out domyślnie dodając na końcu process ID
9. #6. Co ważne?
Oszczędność dyskowa!
Jak podaje dokumentacja rozmiar snapshot’ów może sięgać nawet 500 MB
Rozpoznawanie pliku!
Domyślnie nazwy snapshotów przyjmują nazwy process ID, lub crc32 folder
hash
10. #6. Co ważne?
Oznaczenie w nazwie Wartość
%c Crc32 aktualnie ustawionego folderu
%p Proces id
%r Losowa liczba
%s Nazwa skryptu
%t Timestamp (sekundy)
%u Timestamp (milisekundy)
%H $_SERVER[‘HTTP_HOST’]
%R $_SERVER[‘REQUEST_URI’]
$U $_SERVER[‘UNIQUE_ID’]
$S Session_id
%% Literal %
11. #7. Profiler vs debug bar
Zwykle profiluje się je, aby dowiedzieć się, które części programu
zoptymalizować, by zwiększyć jego ogólną prędkość lub zmniejszyć wymagania
pamięci.
12. #7. Profiler vs debug bar
1. Odnajdywanie cykli - wł./wył.
2. Jednostka zasobu - wartość procentowa lub konkretna, np. ms
3. Zasób pokazany relatywnie do funkcji wywołującej (rodzica) - wł./wył