Buforowanie obiektów WordPress: z łatwością popraw wydajność swojej witryny
Opublikowany: 2022-06-09Wolno ładująca się strona internetowa nie jest preferowana przez nikogo. Jeśli Twoja witryna ładuje się dłużej niż 2 sekundy, użytkownicy natychmiast ją opuszczają.
Według Google Twoja witryna powinna załadować się w ciągu dwóch sekund lub mniej. Jeszcze trochę i goście zaczną tracić zainteresowanie.
Jeśli chodzi o poprawę wydajności witryny, buforowanie obiektów WordPress może Ci najbardziej pomóc. Odpowiednio konfigurując buforowanie obiektów w swojej witrynie, możesz sprawić, że witryna będzie bardzo responsywna dla odwiedzających.
Buforowanie obiektów obejmuje przechowywanie zapytań bazy danych, a po włączeniu w witrynie WordPress może przyspieszyć czas wykonywania PHP, zmniejszyć obciążenie bazy danych i szybciej dostarczać treści odwiedzającym.
Jeśli jesteś nowym użytkownikiem WordPress i nie wiesz zbyt wiele o buforowaniu obiektów WordPress, nie ma się czym martwić. Ponieważ dzisiaj na tym blogu omówimy wszystko na temat buforowania obiektów. Czytaj dalej, aby dowiedzieć się więcej na ten temat.
Jak działa buforowanie w WordPress

Zanim przejdziemy do buforowania obiektów WordPress, rzućmy okiem na to, jak działa buforowanie w WordPress.
Gdy odwiedzający odwiedza Twoją witrynę, zasadniczo dzieje się tak:
- Użytkownik z dowolnego miejsca na świecie odwiedza Twoją witrynę, a jego przeglądarka kontaktuje się z Twoim serwerem WWW.
- Twoja instalacja WordPress łączy się z bazą danych, w której jest zainstalowana, aby pobrać Twoje posty i inne przechowywane dane.
- Następnie serwer internetowy kompiluje te dane na stronie HTML i zwraca je użytkownikowi.
- Jeśli masz włączone buforowanie w swojej witrynie, serwer utworzy kopię tego żądania w Twojej pamięci podręcznej.
- Gdy podobne żądanie zostanie wysłane ponownie, zostanie ono obsłużone z pamięci podręcznej, a nie z bazy danych.
Oznacza to, że pamięć podręczna WordPress zapisuje statyczne strony Twojej witryny, aby pokazać je odwiedzającemu bez generowania dynamicznej zawartości za każdym razem, gdy odwiedzający zażąda określonej strony lub postu.
Może to znacznie poprawić wydajność Twojej witryny, zwłaszcza gdy masz do czynienia z dużym ruchem w witrynie w tym samym czasie.
Co to jest buforowanie obiektów WordPress
Istnieją dwa główne typy buforowania: buforowanie po stronie klienta i buforowanie po stronie serwera .
Istnieje wiele rodzajów buforowania po stronie klienta, ale ten, z którym prawdopodobnie jesteś najbardziej zaznajomiony, to buforowanie przeglądarki. W tym miejscu przeglądarka przechowuje statyczną zawartość strony internetowej, więc następnym razem, gdy ktoś odwiedzi Twoją witrynę, strona zostanie pobrana z pamięci podręcznej na komputerze zamiast ponownego pobrania.
Buforowanie obiektów to rodzaj buforowania po stronie serwera. Oznacza to, że pamięć podręczna jest przechowywana na serwerze, a nie w przeglądarce użytkownika.
Po włączeniu buforowania obiektów serwer utworzy duplikat każdego żądania przesłanego do pamięci podręcznej. Następnym razem, gdy zostanie wysłane podobne żądanie, najpierw sprawdzana jest pamięć podręczna, a żądanie jest obsługiwane stamtąd, zamiast odpytywania bazy danych.

Jeśli kopia nie istnieje, do bazy danych wysyłane jest żądanie przetworzenia i skompilowania. Po przetworzeniu jest odsyłany z powrotem do przeglądarki i tworzona jest kopia w pamięci podręcznej do wykorzystania w przyszłości.
W związku z tym buforowanie obiektów minimalizuje liczbę zapytań serwera dotyczących bazy danych. Ta konfiguracja może zmniejszyć obciążenie serwera, zwłaszcza w godzinach szczytu.
Wyjaśnienie „WP_Object_Cache” w WordPress
WordPress ma wbudowaną pamięć podręczną obiektów i jest to WP_Object_Cache. Jest to klasa WordPress, która może automatycznie przechowywać dowolne dane z bazy danych w pamięci PHP. W ten sposób może zapobiec powtarzającym się i niepotrzebnym zapytaniom do bazy danych.
Domyślnie pamięć podręczna obiektów WordPress jest nietrwała, co oznacza, że przechowuje dane tylko dla pojedynczego załadowania strony. Obiekty w pamięci podręcznej zostaną odrzucone po zakończeniu żądania.
Z tego powodu warto rozważyć użycie trwałego narzędzia do buforowania . Dzięki temu narzędziu obiekty będą buforowane podczas wielu ładowań stron, co jeszcze bardziej poprawi wydajność.
Zewnętrzne rozwiązania trwałego buforowania obiektów, takie jak Redis i Memcached, umożliwiają utrzymywanie pamięci podręcznej obiektów między żądaniami. Pomaga to przyspieszyć dostarczanie zapytań do bazy danych, jednocześnie odciążając serwer.
3 najlepsze trwałe narzędzia do buforowania obiektów dla WordPress
Obecnie dostępnych jest kilka popularnych narzędzi do buforowania obiektów WordPress. Wśród nich Redis, Memcached i APC najczęściej używały narzędzi. Sprawdźmy więc je po kolei.
1. Redis

Redis to rozwiązanie do buforowania obiektów typu open source dla witryn WordPress, które może pomóc zmniejszyć obciążenie bazy danych MySQL. Jeśli powiększasz swoją witrynę lub zwiększasz ruch, może to być pomocne narzędzie dla Twojej witryny.
Redis przechowuje dane w pamięci zamiast na dysku lub dysku SSD. Dzięki temu zapewnia wysoką wydajność. Oferuje wbudowaną replikację. Możesz umieścić dane bliżej lokalizacji użytkownika, aby uzyskać jak najmniejsze opóźnienie.
Redis współpracuje z wieloma strukturami danych, takimi jak ciągi znaków, skróty, listy, zestawy i nie tylko. Jest wyposażony w wiele zaawansowanych funkcji, w tym wbudowaną replikację, skrypty i trwałość na dysku. Redis Sentinel i Redis Cluster zapewniają dodatkowe funkcje, w tym odpowiednio wysoką dostępność i automatyczne partycjonowanie.
Po zainstalowaniu Redis na serwerze możesz połączyć go ze swoją witryną za pomocą wtyczki kompatybilnej z Redis, takiej jak Redis Object Cache.
2. Memcached

Podobnie jak Redis, Memcached jest również rozproszonym systemem buforowania pamięci o otwartym kodzie źródłowym. Służy do buforowania bazy danych, wywołań API i renderowania stron. Pomaga poprawić szybkość aplikacji poprzez zmniejszenie obciążenia bazy danych.
Memcached przypisuje każdemu elementowi klucz, czas wygaśnięcia i surowe dane. Gdy użytkownik poprosi o fragment treści lub danych, Memcached najpierw zajrzy do pamięci podręcznej, aby sprawdzić, czy są tam przechowywane. Jeśli tak, pobiera stamtąd dane i nie musi sprawdzać bazy danych.
Jeśli danych nie ma w pamięci podręcznej, Memcached zwróci kod błędu do aplikacji wywołującej. Aplikacja jest wtedy odpowiedzialna za pobranie danych z innego miejsca i opcjonalnie ponowne przesłanie świeżych danych z powrotem do Memcached. Funkcje WordPress, takie jak get_option, get_postmeta, używają danych z pamięci podręcznej.
Otrzymasz wiele wtyczek zgodnych z Memcached, których możesz używać w swojej witrynie. Wśród nich bardzo popularną wtyczką jest W3 Total Cache.
3. APC
APC lub Alternative PHP Cache to bezpłatna wtyczka buforująca typu open source dla PHP. Dzięki buforowaniu APC wykonywanie skryptów PHP może przebiegać wydajniej dzięki ograniczeniu dynamicznych wykonań PHP.
APC różni się od Redis lub Memcached, ponieważ koncentruje się tylko na buforowaniu PHP. Dzięki ograniczeniu dynamicznych wykonań PHP, wykonywanie skryptów działa wydajniej. Gdy przeglądarka wysyła żądanie strony, serwer analizuje kod w skrypcie PHP, a następnie generuje wynikowy kod HTML, który będzie wyświetlany jako strona w przeglądarce użytkownika.

APC to moduł PECL, który można załadować do PHP, ale ponieważ działa na poziomie serwera, nie można go uruchomić na naszych współdzielonych serwerach hostingowych. Jeśli korzystasz z VPS lub serwera dedykowanego i nie masz problemów z instalacją modułów PECL, możesz śmiało zainstalować APC na swojej stronie.
Jak włączyć trwałe buforowanie obiektów w witrynie WordPress

Teraz pokażemy Ci, jak zainstalować Redis na macOS za pomocą Homebrew. Homebrew to najprostszy sposób na zainstalowanie Redis w systemie macOS . Możesz skorzystać z tego samouczka, aby zainstalować Redis w systemach Linux i Windows.
1. Wymagania wstępne
Najpierw upewnij się, że masz zainstalowany Homebrew. Z terminala uruchom:
$ brew --version
Jeśli to polecenie nie powiedzie się, będziesz musiał postępować zgodnie z instrukcjami instalacji Homebrew.
2. Instalacja
Z terminala uruchom:
brew install redis
Spowoduje to zainstalowanie Redis w twoim systemie.
3. Uruchamianie i zatrzymywanie Redis na pierwszym planie
Aby przetestować instalację Redis, możesz uruchomić plik wykonywalny redis-server
z wiersza poleceń:
redis-server
Jeśli się powiedzie, zobaczysz dzienniki uruchamiania Redis, a Redis będzie działać na pierwszym planie.
Aby zatrzymać Redis, wprowadź Ctrl-C
.
4. Uruchamianie i zatrzymywanie Redis za pomocą Launched
Jako alternatywę dla uruchamiania Redis na pierwszym planie, możesz także użyć launchd
, aby rozpocząć proces w tle:
brew services start redis
Spowoduje to uruchomienie Redis i ponowne uruchomienie go przy logowaniu. Możesz sprawdzić status launchd
zarządzanego Redis, uruchamiając następujące polecenie:
brew services info redis
Jeśli usługa jest uruchomiona, zobaczysz następujące dane wyjściowe:
redis ( homebrew.mxcl.redis ) Running: Loaded: User: miranda PID:
Aby zatrzymać usługę, uruchom:
brew services stop redis
5. Łączenie z Redisem
Po uruchomieniu Redis możesz go przetestować, uruchamiając redis-cli
:
redis-cli
Spowoduje to otwarcie Redis REPL. Spróbuj uruchomić kilka poleceń:
127.0.0.1:6379> lpush demos redis-macOS-demo OK 127.0.0.1:6379> rpop demos "redis-macOS-demo"
6. Instalowanie i aktywowanie wtyczki Redis Object Caching
Po nawiązaniu połączenia z Redis możesz dodać wtyczkę Redis Object Cache do swojej witryny.
Po zainstalowaniu i aktywacji wtyczki przejdź do Ustawienia > Redis na pulpicie nawigacyjnym. Następnie kliknij przycisk „Włącz pamięć podręczną obiektów”, aby włączyć buforowanie obiektów w witrynie.

Otóż to! Pomyślnie włączyłeś buforowanie obiektów WordPress w swojej witrynie.
Bonus: czy Dokan Multivendor jest kompatybilny z buforowaniem obiektów WordPress

To jedno z pytań, które regularnie zadają użytkownicy Dokan – czy Dokan jest kompatybilny z WordPress Object Caching?
Tak! Dokan jest teraz kompatybilny z buforowaniem obiektów WordPress. Jeśli używasz najnowszej wersji Dokan Dokan 3.5.0 lub nowszej, możesz włączyć buforowanie obiektów i bezproblemowo używać Dokan na swojej stronie.
Zainstaluj rozwiązanie do buforowania obiektów WordPress, takie jak Redis lub Memcached, na swoim serwerze i połącz je ze swoją witryną za pomocą kompatybilnej wtyczki, takiej jak W3 Total Cache lub Redis Object Cache. Następnie użyj wtyczki Dokan dla wielu dostawców na swoim rynku online i uzyskaj pełne korzyści z buforowania obiektów WordPress.
Poprzednie wersje wtyczki Dokan multivendor (przed Dokan 3.5) nie obsługiwały pamięci podręcznej obiektów. Ale po wydaniu wersji Dokan 3.5, teraz jest ona całkowicie kompatybilna z buforowaniem obiektów WordPress.
Buforowanie obiektów WordPress — często zadawane pytania
Buforowanie odnosi się do procesu tworzenia statycznych wersji treści i udostępniania ich odwiedzającym. Strony statyczne są zazwyczaj szybko renderowane w przeglądarkach. Prowadzi to do szybszego działania Twojej witryny.
Transjenty mogą trwać jedną sekundę lub jeden dzień, w rzeczywistości zależy od tego, ile czasu chcesz, aby istniały. Jednak po wygaśnięciu nie będzie już dostępny. Oznacza to, że możesz ustawić czas wygaśnięcia i będzie on trwał do czasu wygaśnięcia.
Poprawia wydajność witryny, zmniejszając obciążenie bazy danych. Włączając rozwiązanie buforowania w swojej witrynie, będziesz mógł przechowywać statyczne wersje swojej witryny w pamięci podręcznej. Dzięki temu WordPress może pominąć uruchamianie cięższych skryptów PHP przy każdym ładowaniu witryny.
WordPress nie usuwa automatycznie wygasłych transjentów. Na przestrzeni miesięcy i lat te wygasłe, ale nieusunięte transjenty znajdujące się w tabeli wp_options bazy danych mogą zacząć spowalniać działanie i utrudniać działanie witryny. Z tego powodu powinniśmy usunąć wygasłe transjenty, aby poprawić wydajność witryny WordPress.
Tak, WordPress ma wbudowaną pamięć podręczną obiektów o nazwie WP_Object_Cache. Wprowadzony w 2005 roku, zapewnia sposób automatycznego przechowywania wszelkich danych z bazy danych w pamięci PHP, aby zapobiec powtarzającym się zapytaniom.
Do Ciebie
Buforowanie obiektów WordPress jest kluczowe, jeśli chcesz poprawić wydajność witryny WordPress. Może zmniejszyć obciążenie serwera, nie uruchamiając cięższych skryptów PHP przy każdym ładowaniu witryny. Zamiast tego pokazuje odwiedzającym statyczną wersję żądanego pliku z pamięci podręcznej.
Możesz ustawić i skonfigurować buforowanie obiektów w swojej witrynie, postępując zgodnie z naszym samouczkiem. Możesz także włączyć buforowanie obiektów na swoim rynku online i płynnie korzystać z Dokan, ponieważ teraz Dokan jest w pełni kompatybilny z buforowaniem obiektów WordPress.
To tyle z naszej strony na temat buforowania obiektów. Teraz twoja kolej. Włącz buforowanie obiektów w swojej witrynie i daj nam znać, jeśli napotkasz jakiekolwiek komplikacje podczas konfigurowania buforowania w swojej witrynie, korzystając z poniższego pola komentarza. Chcielibyśmy zająć się Twoim problemem jak najszybciej.