„Ile wtyczek to za dużo?” to jedno z tych pytań, na które w internecie znajdziesz konkretną liczbę. Dwadzieścia. Trzydzieści. Pięć na stronę wizytówkową. Wszystkie te odpowiedzi są nieprawdziwe, bo mierzą nie to, co trzeba.
Licznik wtyczek nie mówi nic o szybkości strony. Znaczenie ma co każda z nich robi i kiedy się ładuje. Widzieliśmy strony z czterdziestoma wtyczkami działające szybciej niż strony z dwunastoma, i odwrotnie. Poniżej to, co faktycznie decyduje.
Krótka odpowiedź: za dużo jest wtedy, kiedy jakakolwiek wtyczka ładuje się na podstronach, na których nie jest potrzebna, albo kiedy dwie robią to samo. Liczba nie ma z tym nic wspólnego.
Trzy sposoby, w jakie wtyczka spowalnia stronę
Warto je rozróżniać, bo naprawa każdego wygląda inaczej.
| Sposób | Co się dzieje | Gdzie to widać |
|---|---|---|
| Dokłada pliki do przeglądarki | Wtyczka do formularzy wgrywa swój arkusz stylów i skrypt na każdej podstronie, także tam, gdzie formularza nie ma | Wolniejsze pierwsze wyświetlenie, gorszy wynik w pomiarach |
| Dokłada zapytania do bazy | Wtyczka pyta bazę przy każdym wyświetleniu produktu albo wpisu, czasem kilkanaście razy | Wolniejsza odpowiedź serwera, widoczne przy większym ruchu |
| Odpytuje coś na zewnątrz | Wtyczka sprawdza licencję albo pobiera dane z cudzego serwera w trakcie generowania strony | Nieprzewidywalne skoki czasu ładowania, awaria u dostawcy zatrzymuje Twoją stronę |
Trzeci przypadek jest najgorszy i najtrudniejszy do wykrycia, bo objawia się nieregularnie. Strona działa szybko przez tydzień, a potem przez dwie godziny ładuje się osiem sekund, bo cudzy serwer nie odpowiada. Właściciel dzwoni do hostingu, hosting mówi, że u nich wszystko w porządku, i obaj mają rację.
Cztery pytania, które warto zadać o każdą wtyczkę
- Czy jest używana? Nie „czy była kiedyś potrzebna”, tylko czy dziś coś od niej zależy. To eliminuje zwykle jedną trzecią listy.
- Czy nie robi tego, co inna? Trzy wtyczki od optymalizacji obrazów albo dwie od cache’u to nie podwójne bezpieczeństwo, tylko konflikt.
- Czy ładuje się tam, gdzie jest potrzebna? Wtyczka do galerii jest niezbędna na stronie portfolio i zbędna na stronie kontaktowej.
- Czy jest utrzymywana? Data ostatniej aktualizacji i zgodność z aktualną wersją silnika. Porzucona wtyczka to problem bezpieczeństwa, nie tylko wydajności.
Skąd biorą się nadmiarowe wtyczki
Nie z niedbalstwa. Z historii.
Ktoś testował trzy wtyczki do jednego zadania i zostawił wszystkie, bo dwie tylko wyłączył, a nie usunął. Poprzedni wykonawca miał swoje ulubione narzędzia i po zmianie agencji nikt ich nie ruszył. Była kampania świąteczna, a wtyczka od wyskakującego okienka została na kolejne dwa lata. Motyw wymagał czterech dodatków, z których dziś używany jest jeden.
Po trzech, czterech latach normalnej pracy każda strona ma taki osad. To jest przewidywalne i nie ma w tym nic wstydliwego, ale trzeba to raz na jakiś czas posprzątać.
Wyłączona wtyczka to nie usunięta wtyczka
Częste nieporozumienie, warte osobnego akapitu.
Wyłączona wtyczka nie ładuje się przy generowaniu strony, więc nie spowalnia. Ale jej pliki dalej leżą na serwerze, dalej są dostępne z zewnątrz i dalej mają swoje podatności. Jeśli w kodzie takiej wtyczki jest dziura pozwalająca wykonać coś bez logowania, to fakt, że jest wyłączona w panelu, niczego nie zmienia.
Zasada jest prosta: nieużywana wtyczka ma być usunięta, nie wyłączona. Wyłączenie jest dobre na tydzień testów, nie na rok.
Co z tym zrobić bez programisty
Sporo da się zrobić samodzielnie i warto zacząć od tego, zanim ktokolwiek wystawi fakturę.
Zrób kopię zapasową, a potem wypisz wszystkie wtyczki i przy każdej dopisz jedno zdanie, do czego służy. Te, przy których nie potrafisz tego zdania napisać, są pierwszymi kandydatami do usunięcia. Sprawdź daty ostatnich aktualizacji i wyrzuć duplikaty funkcji. Zmierz czas ładowania strony głównej i jednej podstrony przed sprzątaniem i po nim, żeby wiedzieć, czy cokolwiek to dało.
Granica samodzielnej pracy przebiega tam, gdzie zaczyna się pytanie „która z tych trzech wtyczek faktycznie generuje te zapytania do bazy”. Na to trzeba narzędzi profilujących i kogoś, kto potrafi odczytać wynik.
W sklepie stawka jest wyższa
Wszystko powyżej dotyczy stron i sklepów tak samo, ale w sklepie konsekwencje są dotkliwsze. Moduł podpięty pod proces zakupowy, który dokłada sekundę do przejścia między krokami koszyka, kosztuje realnymi porzuconymi zamówieniami. Moduł, który przy każdym wyświetleniu kategorii przelicza dostępność wszystkich kombinacji, kładzie sklep w dniu większej promocji, czyli dokładnie wtedy, kiedy najmniej można sobie na to pozwolić.
W sklepach PrestaShop dochodzi jeszcze jedna warstwa: nadpisania. Dwa moduły potrafią nadpisywać tę samą klasę, a wtedy działa ten, który wgrał się później, i nikt nie wie dlaczego coś przestało działać po instalacji czegoś zupełnie niezwiązanego.
Kiedy warto zamówić audyt
Sprzątanie listy wtyczek robi się samemu. Audyt techniczny ma sens wtedy, kiedy widzisz objaw, a nie znasz przyczyny: strona zwolniła i nie wiadomo od czego, coś przestało działać po aktualizacji, przejmujesz stronę po innym wykonawcy albo płacisz za utrzymanie i chcesz sprawdzić, czy dostajesz to, za co płacisz.
Audyt strony WordPress i sklepu WooCommerce kosztuje od 1 999 zł netto, przy czym dokładna kwota zależy od wielkości strony, liczby wtyczek, indywidualnych dostosowań i hostingu, i nie przekracza 4 000 zł netto. Raport oddajemy w 5 do 10 dni roboczych od otrzymania dostępów. Dla sklepów PrestaShop zakres i wycena są osobne.
Co konkretnie znajdujemy w takich audytach, opisaliśmy we wpisie o najczęstszych znaleziskach z audytów.
Masz stronę, która zwolniła i nie wiesz od czego? Napisz do nas. Powiemy, czy to kwestia wtyczek, hostingu, czy czegoś zupełnie innego, i czy audyt jest w tym momencie właściwym wydatkiem.