Wydajność wtyczek

Która wtyczka spowalnia twoją stronę?

Zwykła odpowiedź to popołudnie deaktywowania wtyczek pojedynczo i nadziei, że nic się nie zepsuje w połowie testu. Jest szybszy sposób: przesiej całą listę jednym rzutem oka, potem zmierz prawdziwy request i przeczytaj nazwę funkcji, która cię kosztuje.

Wolna droga, od której wszyscy zaczynają

Deaktywuj wszystko. Reaktywuj jedną wtyczkę na raz. Przeładuj. Zmierz. Powtórz. Działa - tylko zajmuje popołudnie, zmienia twoją żywą stronę, kiedy to robisz, i mija każdą wtyczkę, która jest wolna tylko na konkretnych ekranach albo tylko pod prawdziwym ruchem, którego nie odtworzysz na kopii staging o 23:00.

Co testowanie po jednej mija
  • Wtyczki spowalniające tylko wp-admin albo pojedynczy typ strony
  • Wtyczki wolne tylko pod prawdziwym ruchem albo prawdziwymi danymi
  • Różnica między „ciężką w ogóle" a „ciężką tu, na tej stronie"
  • Godziny przełączania wtyczek na żywej stronie
Szybsze dwa kroki
  • Przesiej całą listę wtyczek przez dane benchmarków - jeden rzut oka
  • Sprofiluj jeden prawdziwy request i uszereguj każdy callback po czasie
  • Zobacz wtyczkę, hook i plik źródłowy, który go zarejestrował
  • Potem zdecyduj: napraw, wymień albo zostaw w spokoju

Dwie różne odpowiedzi na „która wtyczka jest wolna"

Jest „ciężka w ogóle" i jest „ciężka na twojej witrynie, na tej stronie, teraz" - dwa różne pytania. Dane benchmarków odpowiadają na pierwsze. Profiler odpowiada na drugie. WP Multitool ma oba, bo przesiew mówi ci, gdzie patrzeć, a pomiar mówi ci, co naprawiać.

Krok pierwszy: przesiej całą listę - Plugin Performance Score

Twoja strona Wtyczki dostaje kolumnę Performance: kolorowy badge 0-100 obok każdej zainstalowanej wtyczki, zbudowany z mniej więcej 53,700 benchmarków czystej instalacji - zużycie pamięci i koszt zapytań do bazy zmierzone na świeżym WordPressie. Dane są dołączone wewnątrz wtyczki, lookup odpowiada bez zewnętrznego wywołania API, a kolumna nic nie kosztuje na frontendzie. Jest domyślnie włączona.

Wynik Kolor Znaczenie na czystej instalacji
80-100 Zielony Lekka - minimalny wpływ na wydajność
50-79 Żółty Umiarkowana - zauważalne zużycie zasobów
0-49 Czerwony Ciężka - znaczący narzut pamięci albo zapytań
Benchmark to czysta instalacja, nie twoja strona

Czerwony badge znaczy „ta wtyczka jest ciężka na pustej stronie" - nie dowodzi, że to ona spowalnia twoją stronę. Zielony badge też nie dowodzi niewinności: lekka wtyczka może zawiesić twój admin, jeśli czeka na zewnętrzne API. Traktuj kolumnę jako listę podejrzanych, nie wyrok.

Krok drugi: zmierz swoją stronę - Find Slow Callbacks

Skieruj profiler na faktycznie wolny URL - ekran admina, stronę produktu, checkout. Na tym jednym requeście mierzy czas każdego callbacka action i filter, który WordPress wykonuje, potem szereguje po czasie te powyżej 10 milisekund, z hookiem i plikiem źródłowym, który je zarejestrował.

Zamiast „jakaś wtyczka jest wolna" dostajesz plugin_xyz::sync_feed() - 847ms na admin_init, prześledzony do pliku, który go zarejestrował. Sesje są zapisywane, więc możesz sprofilować przed i po zmianie i porównać ten sam URL.

Find Slow Callbacks to moduł Pro, domyślnie wyłączony, i potrzebuje HTTP loopback - musi odpytać twoją własną stronę, żeby ją zmierzyć.

Co zrobić z nazwą

  • Zgłoś to. Autorzy wtyczek biorą „twój callback X zajmuje 800ms na każdym ładowaniu admina" znacznie poważniej niż „twoja wtyczka jest wolna."
  • Wymień ją. Jeśli koszt jest strukturalny - sync feeda na każdym requeście, ping licencji na każdej stronie - żadne strojenie tej wtyczki nie naprawi.
  • Albo ją zostaw. Pomiar mówi ci też, kiedy podejrzana wtyczka była cały czas niewinna, więc przestajesz odinstalowywać rzeczy, które nigdy ci nie zaszkodziły.

Kolumna wyniku przesiewa pole; profiler nazywa winowajcę. Oba są w WP Multitool - profiler w Pro.

Pro od $79/rok →

FAQ: wolne wtyczki

Jak znaleźć, która wtyczka spowalnia moją stronę WordPress?

Dwa kroki. Przesiej stronę Wtyczki przez Plugin Performance Score - badge 0-100 na wtyczkę z ~53,700 benchmarków czystej instalacji - potem sprofiluj faktycznie wolny URL przez Find Slow Callbacks, który szereguje każdy hook callback powyżej 10ms po czasie, z plikiem źródłowym, który go zarejestrował.

Co Plugin Performance Score właściwie mierzy?

Zużycie pamięci i koszt zapytań do bazy każdej wtyczki na czystej instalacji WordPressa - dane benchmarków z mniej więcej 53,700 wtyczek, dołączone wewnątrz wtyczki, więc odpowiedź nie potrzebuje wywołania API. To sygnał przesiewowy: ciężka w ogóle, niekoniecznie ciężka u ciebie.

Czy wtyczka z niskim wynikiem wydajności jest zawsze wolna?

Nie. Wynik jest mierzony na pustej stronie - mówi ci, że wtyczka jest ciężka w ogóle, nie że spowalnia twoją stronę. A lekka wtyczka może zablokować stronę, jeśli czeka na zewnętrzne API. Wynik przesiewa, profiler mierzy.

Czemu po prostu nie deaktywować wtyczek po kolei?

Działa, ale zajmuje popołudnie, zmienia twoją żywą stronę podczas testów i mija wtyczki, które są wolne tylko na konkretnych ekranach albo pod prawdziwym ruchem. Profiler patrzy na jeden prawdziwy request i szereguje faktyczne callbacki - bez przełączania.

Czy Find Slow Callbacks spowalnia moją stronę?

Jest domyślnie wyłączony i profiluje tylko jeden URL, na który go skierujesz, dodając minimalny narzut do tego requestu. To nie jest coś, co leci przy każdym ładowaniu strony, i potrzebuje HTTP loopback, żeby zmierzyć twoją własną stronę.

Czy mogę sprawdzić, jak ciężka jest wtyczka, przed instalacją?

Kolumna wyniku obejmuje to, co już zainstalowane - każdy badge linkuje do pełnego raportu benchmarka, więc możesz też sprawdzić wtyczkę, którą dopiero oceniasz. Dla wtyczek, które masz, kolumna i profiler pokrywają przesiew i pomiar.

Zobacz callback, nie tylko nazwę wtyczki

Plugin Performance Score jest domyślnie włączony w każdej instalacji. Find Slow Callbacks to Pro - $79/rok za jedną stronę, a każdy płatny plan zawiera wszystkie 19 modułów.

Weź Pro - od $79/rok Poradnik: wolny admin Wszystkie plany na stronie cennika →