PŚ #1: Przyspieszamy WordPressa – W3 Total Cache w akcji!

P

Artykuł jest częścią projektu Prędkość Światła, o którym więcej możecie dowiedzieć się tutaj.

Pierwszą rzeczą jaką robię zaraz po świeżym zainstalowaniu WordPressa jest dorzucenie wtyczki do systemu cache. Testowałem wiele rozwiązań, jak dla mnie, najlepiej sprawdza się W3 Total Cache. Oferuje on bardzo dużo możliwości, od minifikacji cssów, jsów aż po sam html. Do tego obsługuje on kilka dostawców warstwy cache: Opcode, Redis, Memcached, dysk. Oraz wiele innych funkcjonalności, o których pisać nie będę – możecie przecież sami sprawdzić.

Co daje mi cache?

Warstwa cache’ująca zapisuje do pamięci ram lub na dysk raz wygenerowane dane i za każdym kolejnym razem zamiast na nowo łączyć się z bazą danych, pobierać rekordy, przemielić to wszystko, użytkownikowi są po prostu wypychane dane z cache. Największą zaletą tego rozwiązania jest zabezpieczenie przed nagłym wzrostem odwiedzin naszej witryny. Przy 1000 użytkownikach na naszej stronie baza danych zostałaby bez cache mocno zgwałcona, co w efekcie ubiłoby stronę na amen. Cache znacząco odciąża nam bazę danych, która nie poczuje dużego obciążenia użytkowników. Wilk syty i owca cała.

Dość teorii, przejdźmy do case study 🙂

Moja konfiguracja środowiska testowego:

PHP 5.6, szablon FlyMag, 1 GB ramu i 4 interpretatory PHP-FPM. Do czystej instalacji wlałem przykładowe dane za pomocą tej wtyczki. 0 włączonych wtyczek.

Suche wyniki przed optymalizacją:


Wyniki najgorsze nie są, nie takich klientów się optymalizowało. Więc do dzieła! Wtyczka, zainstalowana, włączona, wystarczy skonfigurować.

Zacznijmy od General Settings, konfigurację przedstawię wam na screenie. Jeśli wasz hosting wspiera Redisa bądź Memcached, wybierzcie. Jest on zdecydowanie lepszy niż Opcode. Nie każdy daje tą możliwość, więc użyłem Opcode APCu, które powinno znajdować się na każdym hostingu(o tym jaki wybrać produkcyjnie, też kiedyś napiszę).

W minify włączmy jeszcze minifikację HTML

oraz jeśli nasz serwer wspiera HTTP/2, polecam włączyć HTTP/2 push.

Z podstawowej konfiguracji to tyle, możecie sami poeksperymentować z dodatkowymi zakładkami aczkolwiek to co pokazałem w zupełności wystarczy. CDN temat dwa razy większy niż ten więc zostawię go sobie na osobny wpis.

Efekt optymalizacji.

PageSpeed wzrósł o 7%
YSlow wzrósł o 14%
Pozostałe wyniki, które najlepiej obrazują wzrost prędkości przedstawia speedcurve, o którym pisałem już tutaj. W kolumnie po lewej stronie, stan po świeżej instalacji, po prawej znajdują się wyniki po optymalizacji.

A wam? O ile udało się przyspieszyć WordPressa przy pomocy W3 Total Cache? Koniecznie dajcie znać!

O autorze

Filip Nowacki

Swoją przygodę z IT rozpoczął mając 13 lat, kiedy to stworzył swoją pierwszą stronę internetową. Obecnie pracuje jako backend & mobile developer, rozwijając kilka ogólnopolskich produktów o zasięgu blisko 15 milionów użytkowników. Prywatnie maniak optymalizacji, testów A/B, motoryzacji i architektury aplikacji.

5 komentarzy

  • Wielkie dzięki Filip! Przeklikałem konfigurację tak samo jak ty, nie wiem o ile dokładnie strona mi przyspieszyła ale pomogło!! Pierwszy czas ładowania był zawsze bardzo długi, teraz ładuje się zdecydowanie szybciej. Czekam na więcej

  • Używałem wcześniej WP Super Cache, przeniosłem się na W3 z konfiguracją z Twojego screena i efekt tylko ciut lepszy 😉

Your sidebar area is currently empty. Hurry up and add some widgets.