PHP Profilers
- Processes, standards and quality
- Technologies
- Others
XHProf jest oprogramowaniem Open Source (licencja Apache 2.0) i został stworzony pierwotnie dla Facebooka, jako jedno z wielu narzędzi monitorujących pracę developerów. Jest prostym w użyciu profilerem kodu PHP o potężnych możliwościach – z jego pomocą bardzo łatwo prześledzimy ścieżkę wykonania najbardziej skomplikowanego kodu oraz jego wydajność.
Najważniejsze cechy XHProf
- Profiler kodu PHP
- może być używany na serwerze produkcyjnym
- tworzone logi mogą być zapisywane w bazie danych
- interfejs przez stronę WWW
- każde odwiedzenie strony może wygenerować raport
- raporty obejmują wywoływane funkcje, czas ich wywołania, ilość wywołań, stacktrace, zużycie pamięci, wykorzystanie czasu procesora
- możliwość filtrowania po najczęściej wywoływanych funkcjach, najdłużej się wywołujących, zajmujących najwięcej pamięci czy obciążających najmocniej procesor
- możliwość porównywania dwóch przebiegów
- agregacja wielu przebiegów
- call graph – graficzna analiza wywołań funkcji
Instalacja
XHProf jest dostarczany jako rozszerzenie PHP. Aby zadziałał, należy ściągnąć plugin, zbudować jego źródła i włączyć rozszerzenie (np. php.ini).
Graficzny interfejs użytkownika (zarządzanie przez WWW) jest dostarczany jako osobny projekt (skrypt) PHP.
Włączenie profilowania jest łatwe i wymaga dodania kilku linii kodu do profilowanego skryptu (na początku i na końcu). Aplikacje typu CMS można dzięki temu łatwo profilować, ponieważ często zdarza się, że wystarczy odpowiednie „adnotacje” dodać tylko
w jednym pliku, który wywołuje inne funkcje (np. w TYPO3 CMS należy tylko edytować plik index.php).
O programie szerzej można przeczytać w tym miejscu: http://php.net/manual/pl/book.xhprof.php.
Poniżej znajduje się kilka zrzutów ekranowych, które powinny zachęcić do wypróbowania tego narzędzia: