Wysokie obciążenie WordPressa

13 rzeczy, które musisz zrobić, aby upewnić się, że Twój WordPress poradzi sobie z dużym obciążeniem

Jeśli o twoim produkcie lub koncepcji nagle zrobi się głośno, na przykład dzięki występowi w programie telewizyjnym "Die Höhle der Löwen", rekomendacji influencera lub kampanii marketingowej na dużą skalę, oznacza to jedno: duży ruch na serwerze! Dla niektórych stron i serwerów to niestety trochę za dużo. Dziś przedstawię ci ten temat bardziej szczegółowo.

Co się dzieje, gdy jeden z członków drużyny wioślarskiej słabnie? Cała drużyna traci moc i musi kompensować brak siły. Jeśli tak się stanie podczas mistrzostw, jest to fatalne w skutkach i z pewnością doprowadzi do porażki. To samo dotyczy witryny WordPress podczas dużego obciążenia. Jeśli twój serwer, twój motyw, twoje wtyczki, twoja baza danych i inne elementy nie są dobrze zgranym zespołem, twoja strona załamie się pod wpływem szczytów obciążenia — i oczywiście potencjał zostanie zmarnowany.

Jeśli twoja witryna WordPressa nie wytrzyma nagłego zrywu, rezultat jest zawsze taki sam: witryna jest niedostępna, a ty pośrednio tracisz pieniądze. Co więc musisz zrobić, aby do tego nie dopuścić?

Zastanawialiśmy się, jakie kroki należy podjąć, na przykład przed emisją programu "Die Höhle der Löwen" (Jama lwa), aby przygotować swoją stronę internetową WordPress do dużego obciążenia. Poniższe kroki stanowią podstawę procesu optymalizacji według najlepszych praktyk:

  1. Planowanie
  2. Optymalizacja infrastruktury
  3. Backend
  4. Frontend
  5. Offsite
  6. Testy i raportowanie
  7. Transmisja na żywo

W oparciu o ten proces i nasze wieloletnie doświadczenie stworzyliśmy konkretny 13-punktowy plan, który pomoże Ci sprawić, że Twoja witryna WordPress będzie przystosowana do dużego obciążenia.

Uwaga

13 działań uporządkowano według planowania i realizacji, a nie według ich znaczenia. Dlatego zaleca się, aby punkty te były realizowane w całości i jeden po drugim.
WordPress  wysokie obciążenie - planowanie

#1 Planowanie

1.1 Czas

Czas, jaki masz do dyspozycji na wdrożenie, jest niestety często niedocenianym czynnikiem w planowaniu, ale czasami najważniejszym.

Potrzebujesz czasu dla siebie i swojego zespołu, aby zoptymalizować i przetestować swoją stronę i sklep internetowy WordPress. Ty (lub Twój hosting) możesz potrzebować czasu na przeniesienie swojej strony lub domeny albo na skalowanie serwera.

Potrzebujesz też czasu na przemyślenie koncepcji i ewentualną zmianę dostawców zewnętrznych lub wtyczek.

"*" wyświetla wymagane pola

Chcę otrzymywać newsletter, aby być informowanym o nowych artykułach na blogu, e-bookach, funkcjach i nowościach dotyczących WordPress. Mogę wycofać swoją zgodę w dowolnym momencie. Należy zapoznać się z naszą Polityką prywatności.
To pole służy do weryfikacji i nie powinno być zmieniane.

1.2 Ponowne przemyślenie koncepcji

Wtyczki, widżety i zasoby

Powinieneś usunąć wszystkie pochłaniające zasoby wtyczki, widżety i funkcje, które nie są absolutnie potrzebne w twoim pulpicie nawigacyjnym lub na twojej stronie. Czy naprawdę potrzebujesz narzędzi monitorujących, takich jak Matomo czy Google Analytics, w swoim pulpicie nawigacyjnym WordPressa?

Postaraj się ograniczyć do absolutnego minimum, jeśli chcesz, aby Twoja strona pozostawała w sieci nawet przy maksymalnym obciążeniu. Nawet najmniejsze rzeczy, jak przycisk mediów społecznościowych, mogą podwoić czas ładowania. W poniższym przykładzie 12 skryptów o łącznej wielkości 462,7 kB - tylko po to, by wyświetlić przycisk mediów społecznościowych.

Ładowanie skryptów z przycisku mediów społecznościowych
Aby powiększyć zdjęcie, kliknij tutaj lub na grafikę.

Reklamy

Zbyt duża liczba reklam na twojej stronie nie tylko spowalnia działanie twojego serwera, ale także sprawia, że ludzie szybciej opuszczają twoją stronę. W konsekwencji tracisz wpływy z reklam. Ogranicz się do kilku wysokiej jakości reklam, aby zwiększyć zwrot z inwestycji (ROI) tak szybko i skutecznie, jak to możliwe.

E-mail

Twoja strona internetowa to Twoja obecność w sieci — Twoje e-maile nie są z niej kontrolowane. Serwer jest bardzo obciążony, co jest dla Ciebie bardzo kosztowne, zwłaszcza w godzinach szczytu.

Rozróżniamy tutaj dwa rodzaje e-maili:

  • Marketing (Newsletter)
  • Administracja

Maile marketingowe, takie jak Twój newsletter, zawsze powinny być zlecane na zewnątrz. Zgodnie z RODO, niemieccy dostawcy to na przykład Cleverreach lub Newsletter2Go. Oczywiście są też międzynarodowi dostawcy, tacy jak Mailchimp czy ActiveCampaign, którzy również świetnie sobie radzą.

Uwaga: Z zasady nie należy wysyłać wiadomości marketingowych za pośrednictwem swojej strony internetowej.

Maile administracyjne, takie jak faktury, resetowanie haseł, maile z założeniem konta itp. również można zlecić firmie zewnętrznej. Zwłaszcza w przypadku dużej ilości zamówień spowodowanych dużą liczbą odwiedzających, należy to rozważyć.

Jest też kilku dostawców, których możesz używać jako zewnętrznych serwerów SMTP: Mailgun jest moim ulubionym. Istnieje również łatwa do skonfigurowania wtyczka WordPress.

13 rzeczy, które musisz zrobić, aby upewnić się, że Twój WordPress poradzi sobie z dużym obciążeniem

#2 Hosting

Najważniejszym, bezpośrednio możliwym do zrealizowania punktem, na który powinieneś zwrócić uwagę, jest właśnie hosting. Przede wszystkim ważne jest, aby wybrać hosting, który nie ma żadnych limitów ruchu. Ponieważ: Jeśli Twój ruch przekroczy ten limit, Twój hostingodawca może zablokować Twoją stronę i cały wysiłek zostanie zaprzepaszczony.

Plany hostingowe oparte na hostingu współdzielonym są również zupełnie nieodpowiednie dla dużego wzrostu obciążenia, ponieważ dzielisz czas procesora z innymi użytkownikami (stronami internetowymi). W większości przypadków nie są one również wystarczająco mocne, aby wytrzymać takie natężenie ruchu, jak na przykład w "Die Höhle der Löwen".

Hosting specjalizujący się w WordPressie i WooCommerce jest w większości przypadków najlepszym wyborem, jeśli nie chcesz samodzielnie zajmować się konfiguracją, utrzymaniem, optymalizacją wydajności i bezpieczeństwem swojej strony. O czterech czynnikach, na które musisz zwrócić szczególną uwagę, jeśli chodzi o hosting WooCommerce możesz przeczytać w naszym artykule.

Sensowne może być również skalowanie serwera przez krótki okres czasu. Oznacza to, że przez pewien czas zwiększasz skalę swojego serwera (więcej CPU/RAM itp.), a następnie, po okresie największego ruchu, wracasz do zwykłej taryfy, aby zaoszczędzić koszty.

Najlepiej byłoby, gdybyś porozmawiał z gospodarzem strony internetowej na początku procesu planowania. Mogą oni udzielić ci najlepszych rad i zaleceń.

WordPress  wysokie obciążenie - kopie zapasowe

#3 Kopia zapasowa

Kopie zapasowe są absolutną koniecznością, nie tylko w przypadku szczytowych obciążeń, ale w ogóle. Kopie zapasowe twojej witryny powinny być tworzone automatycznie każdej nocy, powinieneś też mieć możliwość tworzenia ich ręcznie. To daje ci dodatkowe zabezpieczenie, zwłaszcza w takich fazach, jak restrukturyzacja twojej strony internetowej.

W ten sposób można również zapisywać duże kamienie milowe jako wersje.

Na przykład:

  • Backup 1: Stan początkowy
  • Backup 2: Zainstalowanie i skonfigurowanie wtyczki buforującej
  • Backup 3: Czyszczenie bazy danych

W ten sposób zawsze możesz wrócić do określonych punktów regulacji, jeśli coś pójdzie nie tak. Zalecam, abyś korzystał z tego w trakcie pracy nad tym dokumentem.

3.1 Systemy zapasowe

Backup u zarządzanych hostingów WordPress (zalecane):
W przypadku większości wyspecjalizowanych hostingów możesz liczyć na automatyczną kopię zapasową swojej strony każdej nocy. Ponadto zazwyczaj istnieje możliwość tworzenia i przywracania ręcznych kopii zapasowych za pomocą jednego kliknięcia. Ponieważ takie kopie zapasowe nie stanowią dla Ciebie żadnej niedogodności i nie zabierają Ci przestrzeni dyskowej, zalecenie jest zdecydowanie w tym kierunku.

Kopia zapasowa za pomocą wtyczki WordPress:
Wtyczki takie jak BackWPup, Updraft, BackUpWordPress i podobne mogą wykonać kopię zapasową całej witryny WordPress, łącznie z mediami i bazą danych, na twoim serwerze.

W zależności od wtyczki i wersji (darmowej lub płatnej) możesz także zapisać swoją kopię zapasową w chmurze* lub ją pobrać.

BackWPup jest napisany przez Inpsyde i jest dobrze wspierany. Jest to więc nasza rekomendacja dla Ciebie, jeśli nie masz rozwiązania do tworzenia kopii zapasowych w swoim pakiecie hostingowym. BackWPup oferuje planowe tworzenie kopii zapasowych, przechowywanie ich w usługach w chmurze*, takich jak Dropbox czy Microsoft Azure, lub na innym serwerze FTP.

W wersji zakupowej możesz określić dodatkowe usługi w chmurze jako miejsce przechowywania danych i szyfrować swoje kopie zapasowe.

*Przechowując kopie zapasowe w chmurze, powinieneś dokładnie przemyśleć, z którego dostawcy korzystasz w czasach DSGVO, ponieważ kopie zapasowe zawierają również dane klientów, takie jak nazwiska, adresy i e-maile..

WordPress  wysokie obciążenie - buforowanie

#4 Buforowanie i minimalizacja

Czynnikiem numer jeden, jeśli chodzi o dostarczanie stron internetowych szybko i z jak najmniejszym obciążeniem serwera, jest oczywiście buforowanie.

Dzięki buforowaniu minimalizujesz zapytania do serwera, który dostarcza statyczne pliki zamiast dynamicznych treści, takich jak obrazy czy HTML stron internetowych. Oprócz ogromnej poprawy szybkości działania, zapewnia to również znacznie mniejsze obciążenie, ponieważ serwer nie musi w kółko ładować tej samej treści. Pomyśl o tym, jakby twoja matka wysyłała cię ciągle po mleko. Zamiast ciągle biegać, wystarczy napełnić lodówkę kilkoma butelkami. W ten sposób zmniejszasz obciążenie nóg i stres związany z tym, że nie byłeś wystarczająco szybki.

Rozróżniamy tutaj buforowanie po stronie serwera i buforowanie za pomocą wtyczek. Szczegółowe informacje na temat pamięci podręcznej i różnic między tymi opcjami znajdziesz w naszym artykule Podstawy buforowania.

Zminimalizowanie CSS i JS może również przynieść korzyści w zakresie wydajności. Tutaj zawartość odpowiednich arkuszy stylów i plików JavaScript jest rozjaśniana przez komentarze i spacje, a następnie łączona w jeden długi ciąg. Polecamy na przykład wtyczkę "Merge + Minify + Refresh".

WordPress  wysokie obciążenie - optymalizacja obrazów

#5 Optymalizacja mediów (skalowanie zdjęć, zlecanie filmów)

5.1 Obrazy

Duże nośniki są oczywiście zabójcze pod względem obciążenia i wydajności. Jeśli podstrona Twojego sklepu zawiera 25 zdjęć produktów w pełnej rozdzielczości, mimo że są one wyświetlane tylko w formacie 200px x 250px, strona szybko padnie na kolana.

Należy szczególnie uważać na obrazki w koszyku lub kasie, ponieważ te obszary nie są buforowane. Jeśli ładujesz obrazy 300dpi w rozdzielczości 2000px, mimo że potrzebny jest tylko piktogram, możesz być pewien, że nikt nie będzie w stanie kupić niczego przy pełnym załadowaniu.

Wyjaśniamy, jakich wtyczek do WordPressa możesz użyć, aby automatycznie przygotować swoje zdjęcia w naszym porównaniu wtyczek do optymalizacji zdjęć.

5.2 Filmy wideo

Filmy są umieszczane na portalach wideo, a następnie osadzane na Twojej stronie internetowej! Przynajmniej jeśli zależy Ci wyłącznie na wydajności. Nie ma prawie żadnego powodu, by samemu organizować konferencje wideo (w niektórych przypadkach może RODO, ale zostawmy to na boku).

Jeśli koniecznie chcesz hostować filmy samodzielnie, zrób to na dedykowanym serwerze, a następnie osadzaj je na swoim końcu. W przeciwnym razie prześlij je na YouTube, Vimeo, 3q lub Brightcove.

WordPress  wysokie obciążenie - wyczyść bazę danych

#6 Czyszczenie bazy danych

Teraz zagłębmy się w tajniki IT WordPressa: baza danych.

Bardzo ważne: Najpierw wykonaj kopię zapasową!

WordPress przechowuje posty, komentarze, strony i inne rodzaje danych tekstowych w jednej bazie danych (obrazy i filmy są wyłączone, ponieważ znajdują się w folderze "wp-content/**"). Oczywiście po pewnym czasie ta baza danych staje się nieco zapełniona i "zagracona".

Śmieci oznaczają tu między innymi:

  • Komentarze spamujące
  • Korekty postów i stron
  • Rzeczy w koszu
  • Metadane postów i komentarzy, takie jak walidacje, które dawno wygasły

To wszystko jest starą pracą, której zwykle już nie potrzebujesz i która obciąża twój serwer.

Jak pozbyć się tych rzeczy?

TL;DR & dla tych, którzy chcą, żeby było trochę łatwiej: Zainstaluj WP-Optimize i pozwól mu działać!

6.1 Zmiany

Rewizje to pośrednie stany Twoich postów, stron i szkiców.

W większości przypadków możesz je znacznie ograniczyć, na przykład do maksymalnie 8-10 rewizji. W niektórych przypadkach sensowne jest nawet ich całkowite wyłączenie.

W twoim wp-config.php piszesz dla tego:

Całkowite wyłączenie:

define( 'WP_POST_REVISIONS', false );

Ograniczenie zmian:

define( 'WP_POST_REVISIONS', 10 ); // Maksymalnie 10 rewizji

6.2 Optymalizacja wp_options

Tabela wp_options jest jedną z najważniejszych i często pomijanych tabel w WordPressie, jeśli chodzi o optymalizację obciążenia. Oprócz takich rzeczy, jak adres URL strony, adres domowy, formaty czasu i dane administratora, wp_options zawiera także ustawienia wtyczek, motywów, zadań cronjobs WP i danych pamięci podręcznej.

Aby to zoptymalizować, musimy najpierw zrozumieć, co oznaczają poszczególne kolumny tabeli. Baza wp_options zawiera następujące kolumny:

  • option_id
  • option_name
  • option_value
  • autoload

Przyjrzyjmy się kolumnie autoload. Kontroluje to, które opcje i ustawienia są ładowane przez funkcję wp_load_alloptions(). Oznacza to, że jeśli wpis w wierszu jest ustawiony na "tak", ta funkcja będzie ładowana na każdej stronie Twojej witryny.
W przypadku wielu wtyczek ustawienie to wynika z tego, że są one tak niesamowicie ważne, że muszą być ładowane na każdej stronie - nawet jeśli w rzeczywistości wtyczka jest używana tylko na jednej stronie (np. kalkulator lub formularz kontaktowy).

Oczywiście, to zapycha twoją stronę i powoduje ogromne dodatkowe obciążenie. Jak to naprawić?

Ostatecznie jest to kwestia planowania. Jak już wspomniano w punkcie 1.2 "Myślenie o koncepcjach", powinieneś zadać sobie pytanie: "Czy potrzebuję tej wtyczki? Jeśli możesz zastąpić ją inną opcją, zrób to.

Na przykład, nie możesz załadować Google Analytics w panelu nawigacyjnym WordPressa, ale z zewnątrz. Zamiast używać wtyczki przekierowującej, możesz sprawdzić u swojego gospodarza strony, czy ma już zintegrowane takie rozwiązania.

Aby dowiedzieć się, które wtyczki powodują długi czas ładowania, napisałem tutaj zapytanie SQL:

SELECT option_name, length(option_value) AS option_value_length FROM wp_options WHERE autoload ='yes' ORDER BY option_value_length DESC

Po wykonaniu tego zapytania otrzymasz listę, która pokaże ci, które funkcje powodują największe obciążenie.

WordPress  wysokie obciążenie: wp_options autoload query

W tym przypadku pochodzi on z wtyczki "Rewrite Rules". Jeśli korzystasz z hostingu Raidboxes, możesz użyć reguł rewrite w pulpicie Raidboxes, wystarczy zastosować reguły rewrite dla tego pola i usunąć wtyczkę.

Duże obciążenie WordPressa: przepisywanie adresów URL Raidboxes

Usuń stare "śmieci z wtyczek" z wp_options

Usunięte wtyczki lubią zostawiać pozostałości w wp_options, a także w autoload = tak. Jest to oczywiście bardzo złe, ponieważ funkcje, które się za tym kryją, już nie istnieją, a czas obliczeniowy serwera jest całkowicie zmarnowany.

To, co zawsze lubię robić, to sprawdzać nazwy usuniętych wtyczek w wp_options i usuwać je.

Zakładając, że nie potrzebujemy już wtyczki "Rewrite Rules" z góry, uruchamiam to zapytanie SQL:

SELECT * FROM `wp_options` WHERE `autoload` = 'yes'AND `option_name` LIKE ·%rewrite_rules%'

Ważne

Może się okazać, że prefiks Twojej bazy danych jest inny, więc może trzeba będzie zmienić to zapytanie w pozycji "wp_options" na "yourprefix_options".

Otrzymuję wtedy z powrotem całą serię funkcji, które nie są już potrzebne, z których wszystkie są nadal ustawione na autoload = tak, ale są całkowicie bezużyteczne. Po prostu je usuwam. Wspominałem już o kopiach zapasowych, prawda? 😉

Przeprowadzam tę procedurę dla wszystkich wtyczek. Wp_options jest już o wiele lżejsze.

6.3 Usuwanie starych stanów przejściowych

Aktualizacja

Od WordPress Ver. 4.9.9 nie jest to już konieczne, ponieważ WordPress sam zajmuje się tym zadaniem.

Dla wersji WordPressa sprzed 4.9.9:
Transjenty to nic innego jak tymczasowe opcje, które są przechowywane w bazie danych przez krótki czas. Po upływie terminu ważności i gdy nie są już potrzebne, są usuwane. Na przykład: "site_transient_update_plugins"  zawiera po prostu informacje, które wtyczki są aktualizowane, a które nie. Gdy tylko zaktualizujesz te wtyczki lub rozpoczniesz nowe sprawdzanie aktualizacji, ten stan przejściowy zostanie usunięty.

Niestety, nie zawsze tak jest, ponieważ niektóre stany przejściowe pozostają na zawsze w bazie danych i utrudniają zapytania. Należy je oczywiście usunąć.

Najlepiej użyć programu Transient Cleaner, ponieważ robienie tego ręcznie jest ogromnym wysiłkiem. Po udanym użyciu tej wtyczki możesz ją bezpiecznie usunąć. Transient Cleaner usuwa tylko wygasłe transjenty i nic więcej - to wspaniałe narzędzie!

Pomiar efektywności E-Book

6.4 Sesje WordPressa

Sesje służą do kontrolowania, rejestrowania, sprawdzania i uruchamiania sesji logowania użytkowników. Po pewnym czasie cronjob WP usuwa te sesje z bazy danych. Przynajmniej tak powinno być.

Niestety, cronjobs zawieszają się lub są dezaktywowane przez wtyczki - wtedy w krótkim czasie masz w bazie danych wiele sesji.

Aby sprawdzić, czy dotyczy to Ciebie, mam dla Ciebie kolejne zapytanie SQL:

SELECT * FROM `wp_options` WHERE `option_name` LIKE '_wp_session_%'

Ważne

Może się okazać, że prefiks Twojej bazy danych jest inny, więc może trzeba będzie zmienić to zapytanie w pozycji "wp_options" na "yourprefix_options".

Jeśli okaże się, że istnieją tysiące wpisów, użyj poniższego polecenia SQL, aby je usunąć:

DELETE FROM `wp_options` WHERE `option_name` LIKE '_wp_session_%'

W Raidboxes mamy do tego celu własne cronjob po stronie serwera, którym możesz sterować w zależności od częstotliwości. Możesz ją znaleźć w ustawieniach Box w sekcji WP Session Eraser.

WordPress  wysokie obciążenie: WP Session Eraser

6.5 Dodawanie indeksu do Autoload

Ok, teraz robi się ciekawie! Jeśli jednak uda Ci się zastosować tę sztuczkę z 10up na swojej stronie WordPress, wiele zyskasz.

Co robi w zasadzie:

Do pola autoload w wp_options zostanie dodany indeks. To znacznie skraca czas zapytania, a nawet sprowadza go do stałego, bardzo niskiego "maksimum".

Wynik jest oczywisty:

WordPress  wysokie obciążenie: wp_options Czas zapytania Indeks
Źródło: 10up

Fajne jest to, że dla większości stron internetowych nasza wtyczka Add Index To Autoload działa wspaniale. Jak zawsze, pamiętaj o wcześniejszym wykonaniu kopii zapasowej!

Ręcznie działałoby to z tym zapytaniem SQL tutaj:

ALTER TABLE `wp_options` ADD INDEX (`autoload`);

Ważne

Może się okazać, że prefiks Twojej bazy danych jest inny, więc może trzeba będzie zmienić to zapytanie w pozycji "wp_options" na "yourprefix_options".

WordPress  wysokie obciążenie - aktualizacje

#7 Uaktualniaj wszystko!

Bardzo skutecznym sposobem na przetrwanie dużego ruchu jest aktualizowanie oprogramowania. Nie tylko sam WordPress, ale także aktywny motyw, wtyczki i, co najważniejsze, wersja PHP.

7.1 PHP

PHP to "silnik programowy" WordPressa. Oznacza to również, że im lepsza wydajność silnika, tym szybciej będzie działać Twoja strona. PHP 7.0 może już wykonywać ponad dwa razy więcej żądań na sekundę niż PHP 5.6 - i to w czasie o połowę krótszym. Dzięki PHP 7.1 i 7.2 cała sprawa stała się nieco szybsza.

Uwaga

Oficjalne wsparcie dla wersji PHP wcześniejszych niż PHP 8.0 już wygasło. Dlatego najlepiej jest przynajmniej zaktualizować do wersji PHP 8 już teraz, aby uniknąć naruszenia bezpieczeństwa swojej witryny WordPress.

Podsumowując, warto używać wersji PHP, która zapewnia najlepszą wydajność. Ale uwaga: nie wszystkie wtyczki i motywy są kompatybilne z najnowszymi wersjami! W tym przypadku pomoże dokumentacja wtyczek i motywów lub zwykła metoda prób i błędów.

Wersje PHP Raidboxes

7.2 Wersja WordPress

Aby uzyskać maksymalną wydajność, wersja twojego WordPressa również powinna być aktualna. Jeśli nie aktualizowałeś swojego WordPressa przez jakiś czas, nie powinieneś przeskakiwać bezpośrednio z jednej dużej wersji do następnej (np. 4.3 do 4.4), ale raczej przesuwać się do przodu w mniejszych wersjach (np. z wersji 4.3.3 do 4.3.4).

Między kolejnymi aktualizacjami zawsze sprawdzaj całą funkcjonalność swojej strony. Zasadniczo zaleca się, aby zawsze tworzyć indywidualne kopie zapasowe witryny. Ma to zastosowanie zwłaszcza przed większymi zmianami wersji!

Zasadniczo zalecany jest tutaj również zarządzany hosting WordPressa, który zajmuje się aktualizacjami WordPressa za Ciebie.

7.3 Wtyczki i motywy

Podobnie jak w przypadku wersji WordPressa, powinieneś aktualizować także wtyczki i motywy. Bezpieczeństwo i wydajność to główne powody. Niebezpieczne wtyczki i motywy mogą zrujnować całą Twoją pracę. Przegląd znanych obecnie luk w zabezpieczeniach WordPressa, motywów i wtyczek można znaleźć w "Bazie luk w zabezpieczeniach WPScan Vulnerability Database" dostawcy zabezpieczeń Sucuri.

Aktualizacje wtyczek i motywów dają ci również możliwość przejścia na wyższą wersję PHP, a tym samym znacznego zwiększenia wydajności. Poza tym znikają błędy i masz do dyspozycji więcej funkcji.

Również w przypadku większych aktualizacji wykonaj wcześniej kopię zapasową swojej witryny lub przetestuj nową wersję w środowisku staging. Przed wprowadzeniem zmian sprawdź funkcjonalność swojej strony.

Konsekwencje zwlekania z aktualizacją wtyczek zostały pokazane na przykładzie błędy w zabezpieczeniach wtyczki RODO.

WordPress  wysokie obciążenie - Broken LInks

Bardzo prostą kwestią, która nie musi obniżać wydajności strony, ale może kosztować Cię utratę odsłon, są niedziałające linki. Możesz łatwo sprawdzić swoją stronę za pomocą narzędzia Online Broken Link Checker.

Zalecam, abyś używał tej strony zamiast wtyczki do WordPressa, ponieważ wtyczki obniżają wydajność twojej strony - nawet jeśli w danej chwili ich nie używasz. Istnieje jednak wiele innych narzędzi i metod służących do wyszukiwania uszkodzonych linków. Możesz dowiedzieć się, czym są w tym poście.

WordPress  wysokie obciążenie - leniwe ładowanie

#9 Lazy Loading

Aktualizacja

Od wersji 5.5 WordPressa nie potrzebujesz już wtyczki do leniwego ładowania, ponieważ WordPress sam zajmuje się tym zadaniem.

Dzięki lazy load wyświetlana jest tylko ta zawartość, którą użytkownik ma w widocznym obszarze przeglądarki. Reszta jest ładowana dynamicznie, gdy użytkownik przewija w dół.

Aby zmniejszyć obciążenie strony, realizowane są tylko te żądania, które muszą być zrealizowane natychmiast. Dotyczy to na przykład obrazów, filmów i tekstów, a także skryptów i innych elementów. Prawdziwe narzędzie mocy - młot Thora, że tak powiem, do oszczędzania zasobów.

Działa to tak:

Przeglądarka ładuje już całą zawartość tekstową (DOM), ale wykorzystuje Javascript do ładowania tylko tych obrazów/filmów/skryptów, których użytkownik rzeczywiście potrzebuje. Jeśli użytkownik przewija głębiej, rzeczy, które znalazły się w jego polu widzenia, są ładowane ponownie.

Wiele nowoczesnych stron Themes, zwłaszcza sklepów, ma już zaimplementowane leniwe ładowanie. Niestety, nie zawsze łatwo jest później dodać leniwe ładowanie.

Ale jest na to odpowiednia wtyczka! Na rynku jest wiele wtyczek do tzw. lazy loading. Jest jednak jedna, którą szczególnie lubię: a3 Lazy Load. A3 Lazy Load działa w bardzo wielu przypadkach i może leniwie ładować nie tylko obrazy, ale także filmy i iFrame. Obsługuje również WordPress AMP, WooCommerce i zaawansowane pola własne.

WordPress  wysokie obciążenie - proces płatności

#10 Optymalizacja procesu płatności

Zwłaszcza jeśli chcesz sprzedawać jeden lub więcej produktów, bardzo ważna jest precyzyjna optymalizacja procesu płatności. Jak wspomniano powyżej, takie rzeczy jak koszyk czy kasa nie są buforowane. Dlatego właśnie tutaj powinieneś bardzo zmniejszyć obciążenie serwera, ponieważ każde żądanie oznacza zupełnie nowe i wymagające dużych zasobów żądanie do serwera.

Użyj narzędzi przeglądarki (na przykład w Chrome, w zakładce "Sieć"), aby sprawdzić, ile żądań jest generowanych w trakcie realizacji zamówienia i które z nich. Jeśli widzisz, że wywołując sam koszyk, generujesz 400 żądań, to coś jest nie tak.

Sprawdź, która wtyczka lub zasób generuje wiele takich żądań i spróbuj je zmniejszyć. Oznacza to, że być może będziesz musiał pozbyć się wtyczek, które nie są Ci absolutnie potrzebne.

Często widzimy tu czcionki, które są ładowane i renderowane z zewnętrznych źródeł, ale nie są nawet używane na stronie koszyka lub kasy.

Zadaj sobie również pytanie, czy naprawdę musisz umieszczać na ekranie kasy wszystkie produkty ze zdjęciami w pełnej rozdzielczości, czy też wystarczy tutaj wyświetlacz tekstowy.

Opcje płatności za pomocą bramek

Może być również konieczna zmiana bramy płatności. Jeśli na przykład twoja wtyczka PayPal długo przetwarza żądania, możesz stracić transakcje w tym miejscu.

Jeśli chcesz zaoferować jak najwięcej opcji płatności i bezpieczny dla Ciebie proces, sprawdź Stripe. Stripe oferuje łatwą integrację z WordPressem i szybkie procesy płatności z dużą liczbą opcji płatności.

WordPress  wysokie obciążenie - CDN

#11 CDN

Czy na stronie wszystko jest już zoptymalizowane? Serwer szybki? Świetnie! Następnym krokiem jest utrzymanie obciążenia na jak najniższym poziomie: Sieć dostarczania treści (CDN).

CDN to w rzeczywistości kopia twojej zbuforowanej strony internetowej, która jest rozmieszczona na różnych serwerach w różnych miejscach na świecie. W ten sposób urządzenia końcowe znajdujące się w jednej z tych lokalizacji mogą szybciej uzyskać dostęp do danych. Quasi - aby powtórzyć przykład z mlekiem z góry - lodówka pełna mleka w każdym pokoju. Ponadto CDN odciąży Twój serwer, ponieważ dostarcza części Twojej strony w pamięci podręcznej ze swojego serwera.

Polecamy Cloudflare jako partnera CDN. Niektóre plany CDN zawierają nawet firewall i optymalizator obrazów. Jak połączyć Cloudflare z twoim Boxem w Raidboxes, wyjaśniono tutaj:

W Cloudflare:

  1. Wpisujesz swoją domenę w polu "Dodaj stronę" i klikasz na "Skanuj rekordy DNS".
  2. Teraz CF automatycznie przeskanuje Twoje dane - po prostu poczekaj aż to nastąpi.
  3. CF przedstawi wtedy propozycje (zazwyczaj dwie dla Rekordów A). I to jest w porządku. Kliknij na "Kontynuuj".
  4. W następnym kroku wybierz swój plan i ponownie kliknij "Kontynuuj".
  5. W tym miejscu masz teraz serwery nazw, które musisz dostosować.
  6. Cloudflare pokazuje, jakie są nasze i na jakie można je zmienić. (Oczywiście dotyczy to tylko domen, które masz u nas. Jeśli masz domeny gdzieś indziej, musisz tam szukać).
  7. Następnie musisz wprowadzić te serwery nazw (5) jako serwery nazw w administracji domeny. Jeśli zarządzasz swoimi domenami z nami, możesz je dostosować tutaj. Kliknij na "DNS" dla danej domeny i zmień serwery nazw na te z Cloudflare. Jeśli masz swoje domeny u innego dostawcy, musisz to sprawdzić.

Gotowe!

Ważne: Jeśli otrzymasz komunikat o błędzie: "Zbyt wiele przekierowań", musisz włączyć opcję "Full Strict" w ustawieniach SSL w Cloudflare.

WordPress  wysokie obciążenie - raportowanie

#12 Raportowanie

Nie możesz obserwować swojej strony przez cały czas i wszędzie, dlatego narzędzie do monitorowania i raportowania czasu pracy jest bardzo ważne. Te w większości darmowe narzędzia monitorują stan Twojej witryny. W krótkich odstępach czasu sprawdzają, czy Twoja strona jest dostępna. Polecamy darmowe plany od Pingdom lub UptimeRobot.

Uwaga na odstępy między kontrolami

Nie ustawiaj tej kontroli zbyt krótko, ponieważ oznacza to również obciążenie dla twojego serwera internetowego. Dlatego odstępy między kontrolami nie powinny być krótsze niż 5 minut.

#13 Końcowa kopia zapasowa

Czy wszystko idzie dobrze? Zadowolony? Świetnie! Teraz musisz wykonać ostatnią kopię zapasową. Teraz Twoja strona nie powinna się zepsuć podczas kolejnego szczytu obciążenia spowodowanego przez "Höhle der Löwen" i tym podobne.

Wnioski

Mam nadzieję, że mój przewodnik krok po kroku pomoże ci przygotować twoją stronę WordPressa do dużego obciążenia. Jeśli nadal masz problemy z bardziej technicznymi elementami, zalecamy, abyś skonsultował się ze specjalistą od WordPressa. Czy masz jeszcze jakieś pytania lub uwagi dotyczące przygotowania do dużego obciążenia? W takim razie nie krępuj się zostawić mi komentarz!

Spodobał Ci się ten artykuł?

Zostawiając opinię pomożesz nam udoskonalać publikowane przez nas treści.

Napisz komentarz

Twój adres e-mail nie zostanie opublikowany. Pola wymagane oznaczone są *.