W tym artykule pokażę jak skutecznie zintegrować istniejącą stronę WordPress z Google Cloud Storage. Uzupełnieniem artykułu będzie integracja Cloud Storage z Google CDN aby zapewnić szybkie działanie i uzyskać coś w rodzaju idealnej architektury, która sprawdzi się w przypadku stron internetowych i sklepów.

Ta prosta architektura, którą zaprezentuję w tym artykule to idealne rozwiązanie dla stron, które mają działać szybko i które mają się dobrze pozycjonować. Integrację z Google Cloud Storage i Google CDN można wykonać na każdej stronie WordPress – nie ważne jak stworzono stronę lub z jakiego hostingu korzystamy.

Architektura po wykonaniu integracji

Działanie, które wykonamy, fachowo określa się jako partycjonowanie funkcjonalne serwera.

Jakość to sposób myślenia, który powoduje, że stosuje się i bez przerwy poszukuje najlepszych rozwiązań.

Edward Deming

Tworzenie zasobnika w Google Cloud Storage

Jak wiadomo z poprzednich wpisów, aby móc działać z Google Cloud musimy stworzyć projekt. Może to być też istniejący, jeżeli ma związek z naszą stroną WordPress np. kiedy używamy hostingu WordPress w Google Cloud.

Aby móc zintegrować WordPressa z Cloud Storage najpierw musimy stworzyć własny zasobnik czyli „Bucket”. Przechodzimy do konsoli Google Cloud i wybieramy „Przechowywanie danych”. Można też skorzystać z wyszukiwarki i wpisać „Cloud Storage”.

Przechowywanie danych w Google Cloud

Tworzymy własny zasobnik poprzez nadanie mu nazwy. Możemy skorzystać z kalkulatora, po prawej stronie, który wyceni orientacyjny miesięczny koszt utrzymywanie danego rozmiaru danych. Jak widać nie są to duże kwoty.

Miesięczny koszt utrzymania 10GB danych (co jest i tak bardzo dużo) to zaledwie 0,26 dolarów na miesiąc.

Możemy spersonalizować ustawienia i wybrać miejsce przechowywania danych, klasę przechowywania danych bądź już na tym etapie określić, czy dane mają być publiczne czy chcemy mieć w przyszłości możliwość nadawania szczegółowych ustawień dostępu.

Tworzenie Systemu Równoważenia Obciążenia

Przechodzimy do następnej usługi – Równoważenie obciążenia czyli Load Balancer. Klikamy przycisk „utwórz system równoważenia obciążenia” i z dostępnej listy wybieramy „Równoważenie obciążenia HTTP(S)”. Wybieramy opcję „Z Internetu do moich maszyn wirtualnych”. Nadajemy dowolną nazwę.

Jako Backend oczywiście wybierzemy wcześniej utworzony zasobnik a w ramach części Frontend tworzymy nowy statyczny adres IP (chyba że posiadamy wolny adres IP stworzony wcześniej) i tworzymy certyfikat SSL.

Równoważenie obciążenia

W następnym kroku kreator zapyta nas czy interesuje nas serwowanie za pomocą Google CDN. Zaznaczamy tę opcję.

Połączenie Google CDN z własną domeną

W szczegółach certyfikatu możemy podać własną subdomenę, która ma służyć do obsługi CDN. IP możemy wybrać statyczny albo efemeryczny. W tym przykładzie wybrałem statyczny, bo nie chcę aby adres IP zmienił się przy restarcie usługi – jest to dodatkowo płatne ok. 7 zł netto na miesiąc. Korzystanie z adresów efemerycznych jest darmowe ale zmieniają się w przypadku restartu usługi i trzeba dokonywać ponownej konfiguracji.

U rejestratora domeny musimy teraz stworzyć pole „A” dla wybranej subdomeny i ustawić pokazane w tym kroku IP. Po jakimś czasie certyfikat zacznie działać i informuje nas o tym zielony znaczek w szczegółach certyfikatu. Trzeba na to poczekać zazwyczaj kilka godzin.

Dla przetestowania czy wszystko działa prawidłowo, można wysłać przykładowy plik do Cloud Storage i spróbować otworzyć go za pomocą własnej sub-domeny podmieniając fragment:

https://storage.googleapis.com/mansfeld

na utworzoną sub-domenę czyli https://cdn.mansfeld.pl/ lub https://static.mansfeld.pl/

Integracja po stronie WordPressa

Musimy teraz sprawić aby WordPress wysyłał pliki do Cloud Storage czyli do naszego zasobnika. Możemy skorzystać z wielu gotowych wtyczek:

Pokażę jak skorzystać z WP Offload Media. Instalujemy i włączamy jak każdą inną wtyczkę. Po wybraniu opcji Google Cloud jesteśmy proszeni o wysłanie pliku .json z danymi autoryzującymi. Można wysłać plik na serwer i wskazać do niego ścieżkę w pliku wp-config.php lub wkleić zawartość pliku do specjalnego okna.

Dodawanie danych autoryzacyjnych do wtyczki WordPress

Skąd wziąć plik? Przechodzimy do Interfejsy API i usługi i wybieramy Dane logowania. Z listy wybieramy usługę dla której chcemy pobrać plik. W nazwie usługi powinno być słowo „stateless”. Klikamy w trzy kropeczki i wybieramy „utwórz klucz”.

Tworzenie klucza w formie pliku JSON

Efekt końcowy i testy

Wszystkie te operacje miały na celu to, aby wysyłane do WordPressa załączniki były automatycznie wysyłane do Cloud Storage a plikom były nadawane adresy URL zgodne z tymi skonfigurowanymi w Google Cloud:

Zintegrowana biblioteka WordPress z Google CDN.

Zaletą takiego rozwiązania jest oczywiście większa wydajność strony i niższy koszt hostingu, bo od teraz nie musimy płacić za konta hostingowe z dużą ilością przestrzeni dyskowej.

Czy pliki faktycznie, ściągają się szybciej. Tak, pokazywałem to już w teście dotyczącym CDN:

Czas TTFB jest niższy a dzięki temu, że na połączenie nie są nałożone żadne limity, plik o tej samej wielkości ściąga się o wiele szybciej.

Zalety korzystania z bezstanowej pamięci

  • radykalne przyspieszenie pobierania plików statycznych (zdjęć, plików CSS, JS),
  • skrócenie czasu blokowania renderowania się strony,
  • korzystny wpływ na SEO,
  • niższy koszt hostingu,
  • odciążenie głównego serwera WordPress,
  • większa przenośność strony,
  • możliwość zapewnienia większej dostępności,
  • możliwość wykorzystania wielu serwerów w ramach jednej strony WordPress,
  • lepsze wyniki w PageSpeed Insights i GTMetrix.

O zaletach CDN czytaj w osobnym artykule: Co to jest CDN, czy warto?

Podsumowanie

Jak widać integracja WordPressa z Google Cloud Storage nie stanowi problemu. Powstało wiele gotowych wtyczek, które całą część związaną z integracją zrobią za nas. Korzystanie z takiego rozwiązania pozytywnie odbije się na szybkości działania strony WordPress, wrażeniach użytkowników i oczywiście na pozycjach.

Wdrożyliśmy CDN bez zmiany DNSów i adresu IP. Pliki statyczne są na osobnej subdomenie należącej jednak do głównej domeny serwisu co pozytywnie wpłynie na autorytet domeny w dłuższym okresie czasu. Taką architekturę mają największe aplikacje i popularne strony internetowe. Użycie bezstanowej pamięci to świetne rozwiązania na odciążenie hostingu w początkowych fazach rozwoju serwisów internetowych i aplikacji webowych stworzonych na frameworku WordPress i nie tylko.

Źródła:

https://cloud.google.com/cdn/docs/setting-up-cdn-with-bucket

Oceń artykuł na temat: Integracja WordPress z Cloud Storage i Google CDN
Średnia : 4.8 , Maksymalnie : 5 , Głosów : 10