PHP Profilers

PHP Profilers

data: 20 maja, 2013
czas czytania: 2 min
autor: Adrian `Vizzdoom` Michalczyk

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:

Screenshots

php1

php2

php3

php4

Newsletter IT leaks

Dzielimy się inspiracjami i nowinkami z branży IT. Szanujemy Twój czas - obiecujemy nie spamować i wysyłać wiadomości raz na dwa miesiące.

Subscribe to our newsletter

Administratorem Twoich danych osobowych jest Future Processing S.A. z siedzibą w Gliwicach. Twoje dane będziemy przetwarzać w celu przesyłania cyklicznego newslettera dot. branży IT. W każdej chwili możesz się wypisać lub edytować swoje dane. Więcej informacji znajdziesz w naszej polityce prywatności.

Subscribe to our newsletter

Administratorem Twoich danych osobowych jest Future Processing S.A. z siedzibą w Gliwicach. Twoje dane będziemy przetwarzać w celu przesyłania cyklicznego newslettera dot. branży IT. W każdej chwili możesz się wypisać lub edytować swoje dane. Więcej informacji znajdziesz w naszej polityce prywatności.