Profilowanie witryny WordPress w celu wdrożenia na Shared Hosting?


16

Mam problem z użyciem procesora w mojej witrynie i szukam sposobu na wykrycie (i naprawę) tego, co go powoduje. Temat nie ujęty w tym pytaniu .

Podążając za odpowiedzią Hakre tutaj , teraz zdaję sobie sprawę, że muszę zrobić profil mojego wywołania PHP.

Czy rozsądne jest umieszczenie witryny na własnym komputerze, uruchomienie profilera i wykorzystanie tych informacji do ulepszenia mojej witryny?

Wszelkie inne sugestie, jak to zrobić w najlepszy sposób?

Odpowiedzi:


7

Profilowanie za pomocą wtyczek Profiler

Nie jestem pewien, co dokładnie musisz osiągnąć dzięki profilowaniu, ale WP Tuner (wtyczka Wordpress) ma długą drogę do znalezienia tego, co spowalnia instalację WP.

Patrzy na każdą wtyczkę i podaje pamięć, czas pracy procesora i zapytania SQL.

SQL Monitor (Wordpress Plugin) analizuje wydajność SQL.

Połącz go z W3 Total Cache (Wordpress Plugin) i powinieneś uzyskać lepszą wydajność na dowolnej platformie.

Ponadto należy użyć przejściowego interfejsu API do przechowywania fragmentów, których nie trzeba generować za każdym razem. To może naprawdę pomóc w przypadku wolnej bazy danych.


3

Zbudowaliśmy profil PHP na XHProf, który również używa formatu wyjściowego callgrind. Główną zaletą w stosunku do XDebug jest znacznie niższy koszt i lepsza obsługa funkcji rekurencyjnych, a także funkcje początkowe i końcowe profilowania w stylu XHProf, umożliwiające automatyczne testowanie jednostek.

Można to zobaczyć na stronie http://www.exteon.ro/en/products/php-tools/web3tracer

Będziesz jednak musiał go skompilować i użyć na swoim polu testowym lub poprosić dostawcę usług hostingowych o zainstalowanie go, ale prawdopodobnie tego nie zrobią.


2

Profilowanie za pomocą Xdebug

Szukałem linków, więc łatwiej jest przeczytać ten temat. Szukałem profilowania PHP za pomocą XDebug, co sugerowałbym:

Aby wyświetlić wyniki profilowania na zdalnej stronie, przydatny może być webgrind . Jest to aplikacja PHP podsumowująca dane wyjściowe profilera.

Nie jestem pewien, czy to możliwe, aby zapewnić to wszystko w formie wtyczki do WordPressa (przynajmniej nie ma żadnej, o której jestem świadomy i nie sądzę, aby coś było w tej chwili dostępne), więc może być konieczne wykonaj kilka ustawień / konfiguracji / profilowania we własnym zakresie.


-1

Tak, profilowanie strony internetowej na własnym komputerze jest całkowicie uzasadnione. Będziesz musiał zainstalować środowisko, w tym serwer WWW i profilować witrynę za pomocą wybranego profilera.

W systemie Windows lokalna instalacja WordPress jest niezwykle łatwa dzięki Instalatorowi platformy internetowej. Zainstaluj WordPress jednym kliknięciem, uwzględniając wszystkie wymagania wstępne z tego miejsca .


1
Hmm, używanie innego systemu operacyjnego niż ten, na którym działa strona (najprawdopodobniej Unix lub Linux), jest w jakiś sposób bezużyteczne w profilowaniu. Profilowanie powinno odbywać się w środowisku możliwie najbliższym środowisku docelowemu.
hakre

1
kod jest kodem, jeśli w niektórych wtyczkach występuje prawdziwe wąskie gardło (co jest celem OP), profilowanie wykryje to bez względu na system operacyjny, na którym działa. Ponadto nie określił, na jakim systemie operacyjnym działa jego serwer WWW. Niestety, nie znam innych systemów operacyjnych, podałem link do instalatora Windows głównie w celach informacyjnych.
Marek

Marek - dziękuję za link i odpowiedz. Hakre, rozumiem twój punkt widzenia, chociaż podejrzewam, że profilowanie wtyczek byłoby raczej podobne w obu systemach operacyjnych, prawda?
Tal Galili,

Zależy od wtyczki. Po prostu nie ryzykowałbym dokonywania pomiarów w innym systemie niż system życia, aby się do niego zbliżyć. Może tylko powodować bóle głowy i patrzeć w niewłaściwe miejsca itp. - Poza tym możesz lepiej profilować pod linuksem niż w systemie Windows. patrz: hakre.wordpress.com/2010/09/09/…
hakre

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.