Czy wtyczka Jetpack spowalnia stronę?

Jetpack

Jetpack to wtyczka, dzięki której możemy dodać do naszej strony funkcje dostępne w usłudze WordPress.com. Dość powszechną jest jednak opinia, że rozszerzenie to spowalnia stronę – na pewno wpływa na nią fakt, że posiada ona ponad 30 modułów.

Matt Medeiros postanowił zweryfikować tę opinię i przeprowadził testy mające na celu sprawdzenie, czy Jetpack naprawdę ma wpływ na szybkość działania strony.

Ten wpis jest częścią cyklu poświęconego wtyczce Jetpack.

Wyniki testu

Test został wykonany na WordPressie w wersji 4.6.2 z motywem Sanse (który – według Matta – jest bardzo szybki). Strona została umieszczona na serwerze dedykowanym firmy Siteground, a do mierzenia czasu ładowania strony wykorzystano narzędzie GTMetrix.

Test składał się z czterech pomiarów, których wyniki przedstawiają się następująco:

  1. Brak aktywnych wtyczek
    rozmiar strony: 74,6 KB
    czas ładowania: 0,5 s
    liczba żądań: 5
    PageSpeed: 95%
    YSlow: 84%
  2. Jetpack włączony, wszystkie jego moduły wyłączone
    rozmiar strony: 137 KB
    czas ładowania: 0,6 s
    liczba żądań: 7
    PageSpeed: 90%
    YSlow: 79%
  3. Jetpack włączony, wszystkie jego moduły włączone
    rozmiar strony: 263 KB
    czas ładowania: 0,8 s
    liczba żądań: 16
    PageSpeed: 84%
    YSlow: 62%
  4. Jetpack wyłączony, włączone 3 popularne wtyczki do galerii, statystyk i przycisków udostępniania treści w serwisach społecznościowych
    rozmiar strony: 614 KB
    czas ładowania: 1,3 s
    liczba żądań: 30
    PageSpeed: 77%
    YSlow: 57%

Jak widać już sama aktywacja Jetpacka, bez włączania jakichkolwiek jego modułów, powoduje zauważalny wzrost liczby pobieranych przez przeglądarkę danych, mimo że na czas ładowania strony nie ma to znaczącego wpływu. Źle zaczyna się robić gdy włączymy wszystkie moduły wtyczki – ale prawda jest taka, że w praktyce nikt tego nie robi.

Ciekawy jest natomiast wynik testu pokazującego efekt instalacji trzech popularnych wtyczek, które w założeniu mają zastąpić trzy popularne moduły Jetpacka. Te wtyczki to Gallery, AddThis i Google Analytics. Ilość pobieranych przez przeglądarkę danych wzrosła ponad dwukrotnie w stosunku do strony z aktywowanymi wszystkimi modułami Jetpacka, czas ładowania wydłużył się o połowę, a liczba żądań wysyłanych do serwera podwoiła się.

Wnioski

Z przeprowadzonego przez Matta testu wynika, że Jetpack nie jest jednak taki straszny, ale… wszystko zależy od konkretnego przypadku. Prawdopodobnie można znaleźć inne wtyczki realizujące podobne funkcje, które będą miały mniejszy wpływ na czas ładowania strony, ale może też się okazać, że wszystkie dostępne alternatywy są wolniejsze. Jeśli więc zależy nam na czasie ładowania naszej strony, to warto takie testy przeprowadzić samemu.

Powyższy test nie jest jednak pozbawiony wad. Przede wszystkim nie uwzględnia on obciążenia serwera, jakie generuje Jetpack i porównywane z nim wtyczki. Autor przeprowadził test na serwerze dedykowanym, podczas gdy znaczna większość użytkowników korzysta z tańszych serwerów współdzielonych. Ponadto test został przeprowadzony na stronie bez treści – w przypadku serwisów z dużą liczbą wpisów wyniki mogłyby być nieco inne.

Pełny raport z testu oraz szczegółowe wyniki pomiarów dostępne są na stronie Matta.

Bezpośredni link

  • Jest już WP 4.6.2? Nie mam aktualizacji w kokpitach

    • Nie ma. ;) Autor prawdopodobnie korzystał z wersji rozwojowej z repozytorium. Albo to po prostu błąd.

  • Różnice w większości przypadków widać „gołym okiem” ale dobrze, że ktoś przeprowadził test. Masywność Jetpacka to nie jest żadna miejska legenda.

    Miałem okazję sprawdzić na „ciężkim” serwisie postawionym na całkiem mocnym vpsie, same statystyki i analytics pożerają sporo zasobów ale to chyba żadna tajemnica. Mówiąc „sporo” ma na myśli, że różnica jest zauważalna i nie kończy się na dodatkowej sekundzie.

    Jetpack to fajny kombajn sam w sobie ale ciężki i osobiście trzymam się z daleka, bo wychodzę z założenia że jeśli coś jest do wszystkiego, to jest tak naprawdę do niczego. Dość skrajne podejście ale podejrzewam, że zaoszczędziło mi wiele problemów.

    • 〰〰〰〰

      Statystyki pożerają ci sporo zasobów? Przecież staty jetpacka działają podobnie jak Google Analytics??!!

      • Nie „mnie”, po prostu sprawdzałem przy okazji i optymalizacji jednej ze stron i witryna znacznie lepiej działała bez modułu statystyk i analyticsa(mowa o module typu dashboard). Nie mam żadnych testów, zrzutów ani nic w ten deseń – klient nie chciał się pozbywać jetpacka, po prostu przy okazji sprawdziłem. Znowu też był to jeden przypadek, nie kilka.

        Staty jetpacka generują zupełnie inne dane, niż Analytics. Zdziwiłbym się, gdyby „działały podobnie”, tak jak wspominasz.

        • 〰〰〰〰

          Chodziło mi o to, że moduł statystyk, tak jak i moduł protect, related content czy sharedaddy jest oparty o zewnętrzną infrastrukturę, w tym przypadku WordPress.com, to tam zebrane dane są magazynowane i przetwarzane. Nie po stronie serwera na którym aktywny jest Jetpack.

          • Wiem(znaczy się nie wiem jak działa reszta modułów ale akurat o module statystyk czerpiącym dane z wordpress.com to wiem) :) Zainteresowałem się tematem po teście i sam się zdziwiłem. Nie wiem, może był to jakiś zbieg okoliczności, tematu nie drążyłem jakoś dogłębniej zwłaszcza, że połowa testów, które później przejrzałem w sieci nie były miarodajne.

            Nie będę się wykłócał, że mam rację – po prostu przy okazji miałem okazję sprawdzić i zauważyłem różnicę, Chyba, że mowa o jetpacku jako całości – tutaj twardo przystaję przy swoim.

  • P.

    Dlatego staram się unikać WP. Dla mniejszych serwisów jest spoko. Ale jak trzeba się zmierzyć z potężnym ruchem, to już lipa.
    Ale wyniki testów nie powinny dziwić. Każdy dodatek do strony to potencjalnie wolniejsze ładowanie się strony.

    • Paweł Knapek

      1. Lipa to jest, jak się bierze za coś, o czym nie ma się większego pojęcia i partoli się robotę.
      2. Ach te potencjalne teorie… mogę mieć 20 wtyczek zainstalowanych i strona będzie śmigała jak rakieta, mogę mieć zainstalowaną tylko jedną, a będzie się ślimaczyła albo wyłoży się totalnie. -wtyczki same w sobie czy ich ilość nie są w zasadzie problemem. Problemem jest brak umiejętności selekcji, analizy, dostosowania i optymalizacji dostępnych rozwiązań – w skrócie ignorancja.

      • P.

        1. ?
        2. Nie potencjalne teorie tylko na podstawie w/w testu.

        • Paweł Knapek

          Znaczy potrzebne wyjaśnienie? ok…
          1. Bez lipy daje się robić duże serwisy ze sporym ruchem – jak się odpowiednio podejdzie do tematu tak pod względem infrastruktury jak i projektu takiego serwisu i jego optymalizacji. Przykładów w sieci znajdziesz sporo, jeżeli tylko poszukasz. Lipa, to jest gdy nie spełniasz ww. warunków i stawiasz nawet super zoptymalizowany sajt na kiepskiej maszynie, albo odwrotnie – super infrastruktura pod spodem, ale optymalizacja leży i kwiczy.
          2. teorie na podstawie testu, gdzie masz w zasadzie 4 wtyczki, w tym 3 dobrane właściwie nie wiadomo według jakiego klucza. W repo zaś masz prawie 48 tyś wtyczek, trochę jeszcze dostępnych poza repo + te własne.
          Są lepsze, są gorsze, są zbędne – wszystko zależy od doboru. Tutaj dobrano akurat taki zestaw, który miał pokazać, że Jetpack jest lepszy. Przy innym zestawie role mogły by się całkowicie odwrócić. Ba, nawet ten testowy zestaw mógł by przypadkiem wypaść lepiej w realnych warunkach tj. po wypełnieniu strony treścią.
          No ale oczywiście można generalizować i teoretyzować. Równie dobrze mogę napisać, ze powinieneś się bać, bo potencjalnie każdego dnia może Ci spaść na głowę samolot.

  • Paweł Knapek

    Wniosek jest taki ….że cały ten test, to jedna wielka lipa. Matt po prostu chciał zareklamować swój produkt i tak skroił test, by ten wypadł w nim przyzwoicie. Taka ustawka w ściśle kontrolowanych, anormalnych warunkach. Na podobnej zasadzie amerykańscy naukowcy udowadniają najróżniejsze dziwactwa – najpierw pojawia się niesamowita teoria, a potem pod nią ustawia się testy i prowadzi aż do uzyskania „odpowiedniego” wyniku – za którymś razem trafi się wreszcie ten „złoty strzał”.
    Tutaj podobnie, bo warunki tego testu nijak nie były zbliżone do warunków normalnych. No i na koniec to tendencyjne porównanie z „alternatywami”.

    • Mimo że masz trochę racji, to ciekawy jestem, jaki według Ciebie produkt jest reklamowany w tym teście.

      • Paweł Knapek

        Jetpack by Automattic by Matt ? ;)

        • Być może wiesz coś, czego ja nie wiem, ale ten Matt nie znajduje się na długiej liście autorów Jetpacka. ;)

          • Paweł Knapek

            …a widzisz, teraz zauważyłem o jakiego Matta chodzi ;p – przyznaję się bez bicia, takie skutki czytania na skróty. :(
            Co jednak nie zmienia faktu, że test o kant dolno-tylniej części ciała potłuc.

  • Ciekawy post, dzięki.

  • Patrycja Bonczewska

    hmm zastanawiam się czy skoro mam do mojego WP podłączonego GA i wtyczkę z GA to czy jest sens dodawac Jetpack?:)