Zaawansowane techniki zwiększające prędkość ładowania witryny do granic

Opublikowany: 2018-12-26

Potrzeba szybkości. Chociaż cytat jest czymś typowo kojarzonym z samochodami, w sieci istnieje również potrzeba szybkości. Użytkownicy nie tylko żądają szybkiego ładowania witryn, wielu użytkowników zgłasza, że ​​zaczynają się denerwować, gdy ładowanie trwa dłużej niż 3 sekundy.

Jeśli Twoja witryna potrwa dłużej niż 8 sekund na reakcję na wejście użytkownika, opuści on witrynę i nigdy nie wróci. Stracisz klienta na zawsze.

Oprócz doświadczenia użytkownika, jest jeszcze jeden odwiedzający, który wymaga, aby Twoja witryna była szybka – Google. Szybkość ładowania witryny jest w rzeczywistości czynnikiem rankingowym, witryny, które nie są szybkie, są karane w rankingach organicznych w porównaniu do witryn, które szybko się ładują.

Ale prawdopodobnie już to wszystko wiesz, w rzeczywistości istnieją setki artykułów o tym, jak przyspieszyć ładowanie stron internetowych, nawet na tej stronie.

Ale zamierzamy wyjść poza to wszystko. Teraz zamierzamy wrzucić wyższy bieg i wspomnieć o kilku zaawansowanych technikach, które przeniosą szybkość ładowania Twojej witryny na wyższy poziom.

1. Hostuj swoją witrynę na wirtualnym serwerze prywatnym (lub lepszym)

Hosting witryny na VPS (lub wirtualnym serwerze prywatnym) jest pierwszą i najłatwiejszą rzeczą, którą musisz zrobić, aby Twoja witryna ładowała się szybciej. Nie jest zbyt zaawansowany i nie jest szczególnie nowatorski, ale mimo to jest niezbędny.

Powodów tego jest wiele.

Pierwszym z nich jest to, że większość kont hostingowych koncentruje się na tym, aby przynosić zyski firmie świadczącej usługę, a nie na wydajności witryn, które są na nich hostowane.

Improve Website Loading Speed

Koncepcja hostingu polega na tym, że bierzesz kilka fizycznych serwerów i umieszczasz na nich setki, a nawet tysiące stron internetowych w taki sposób, aby zarobić.

Przeprowadźmy kilka liczb, aby to wyjaśnić.

Załóżmy, że serwer fizyczny kosztuje 1000 USD miesięcznie dla firmy hostingowej, a współdzielone konto hostingowe kosztuje 5 USD miesięcznie.

Serwer hostingowy musi obsługiwać 200 stron internetowych (5 USD * 200 = 1000 USD), aby wyjść na zero. Potrzebuje 240 witryn, które zarabiają 200 USD miesięcznie na tym serwerze.

Współdzielone konto hostingowe współdzieli zasoby serwera z 240 innymi witrynami, a Twoja witryna konkuruje o zasoby ze WSZYSTKIMI tymi witrynami.

Ponieważ nie masz kontroli nad żadną z tych witryn, Twoja witryna działa wolno bez Twojej winy, ale dlatego, że inne witryny korzystają z serwera.

Chociaż powyższe liczby mogą nie być dokładne, koncepcja stojąca za tym jest prawdziwa.

Wirtualny serwer prywatny jest zupełnie inny. Zwykle kosztuje około 5 do 10 razy więcej niż współdzielony serwer hostingowy, więc firma hostingowa wymaga mniej „klientów”, aby uzasadnić i zarobić na tym serwerze.

Ale dla firmy prowadzącej firmę za pośrednictwem swojej strony internetowej, dlaczego miałbyś zawracać sobie głowę skąpymi kilkoma nędznymi dolarami miesięcznie? Jaka jest prawdziwa różnica między płaceniem 4,95 USD a 29,95 USD miesięcznie? To nie rozbije banku, prawda?

Poza tym konta VPS zazwyczaj mają dedykowane zasoby dla każdego konta. Zasadniczo te zasoby, takie jak pamięć i czas procesora na serwerze, są zarezerwowane dla Twojej witryny i samej witryny.

Oznacza to, że żadne inne konto nie może korzystać z zasobów Twojego konta, nawet jeśli Twoja witryna nie ma obecnie żadnych użytkowników i nie korzysta z tych zasobów.

Dzięki temu każde konto działa znacznie szybciej, a witryny hostowane na VPS są zwykle o kilka sekund szybsze niż te hostowane na współdzielonych kontach.

Przekonasz się, że wiele usług oferuje bezpłatne aktualizacje z ich wirtualnymi kontami na prywatnych serwerach, takie jak integracja z CDN lub zaawansowane usługi bezpieczeństwa witryny za pośrednictwem stron trzecich, takie jak Incapsula i obsługa HTTP2 w ramach konta hostingowego lub za niewielką dodatkową opłatą. opłata – wszystko to zapewnia sprawne działanie Twojej witryny.

Improve Website Loading Speed

Co ważniejsze, dzięki VPS klient ma pełny dostęp do konfiguracji oprogramowania serwera obsługującego jego stronę internetową, z pełnymi prawami administracyjnymi do tych zasobów, które są przeznaczone dla jego konta.

Więc po pierwsze, uaktualnij swoje współdzielone konto hostingowe do wirtualnego serwera prywatnego, a nawet serwera dedykowanego, jeśli masz na to budżet.

To jest coś, co jest ważne dla następnych technik, o których wspomnimy poniżej, ponieważ większość z nich będzie wymagała dostępu do WHM lub dostępu administracyjnego do twojego serwera.

2. Zaktualizuj swoją bazę danych MySQL do najnowszych wersji lub MariaDB

Jeśli korzystasz z WordPressa lub innego systemu CMS lub witryny opartej na bazie danych, prawdopodobnie Twoja witryna używa MySQL jako backendu bazy danych.

Dzieje się tak, ponieważ MySQL jest domyślnie preinstalowany na większości kont hostingowych.

Jednak większość ludzi nie zdaje sobie sprawy, że domyślna wersja MySQL zainstalowana na większości kont jest dość stara, czasami prawie przestarzała. Nie jest też zbyt szybki w porównaniu z innymi technologiami, które zostały zoptymalizowane pod kątem szybkości.

A większość ludzi nie wie, że istnieje odpowiednik silnika bazy danych, który może z łatwością zastąpić MySQL, jednocześnie zwiększając szybkość witryny.

To jest silnik bazy danych MariaDB . W rzeczywistości został stworzony przez oryginalnych programistów MySQL, więc możesz sobie wyobrazić, że chcieliby, aby był w 100% wymienialny z MySQL.

Improve Website Loading Speed

Rzeczywiście, godne uwagi firmy, które wykorzystują ten szybki silnik baz danych w swojej infrastrukturze, to Wikipedia, Google, a nawet WordPress.com!

Nawet jeśli nie dokonujesz aktualizacji do MariaDB, zaktualizuj do najnowszej wersji MySQL. Najnowsze wersje oprogramowania są zawsze szybsze i wydajniejsze niż starsze wersje.

Aktualizacja oczywiście nie jest dla osób o słabym sercu, jest to z natury ryzykowna procedura i potrzebujesz kopii zapasowych, które możesz przywrócić, na wypadek, gdyby coś nie działało dobrze.

Wymaga również dostępu ROOT do serwera lub VPS, dlatego wspomnieliśmy, że musisz uaktualnić do VPS lub serwera dedykowanego.

W tym celu (po wykonaniu pełnej kopii zapasowej maszyny wirtualnej) zaloguj się do WHM.

Przejdź do Strona główna >> Oprogramowanie >> Aktualizacja MySQL/MariaDB .

Jest wtedy prosty kreator, za pomocą którego możesz automatycznie wykonać aktualizację.

Improve Website Loading Speed

3. Zaktualizuj do najnowszej wersji PHP7

Tak jak wspomnieliśmy wcześniej, przekonasz się, że domyślna wersja konfiguracji PHP z większością kont hostingowych nie jest najszybsza.

Na przykład, jeśli twój hosting domyślnie korzysta z wersji PHP5.6, nie jest to aktywne wsparcie od kilku lat (styczeń 2017).

Nawet wsparcie dla wersji 7.0 dobiega końca od grudnia 2017 r., a obecnie obsługiwaną wersją jest wersja 7.2.

Jednak ze względu na przeszłość większość kont hostingowych nadal będzie korzystać ze starszych wersji PHP – ale w rzeczywistości PHP7.2 jest niezwykle szybkim silnikiem!

Improve Website Loading Speed

Każda dobra usługa hostingowa powinna pozwolić ci na zrobienie 7.2 silnika używanego w twoich witrynach. Jeśli nie jest to dla Ciebie dostępne, prawdopodobnie nadszedł czas, aby zmienić usługę na lepszą!

Oczywiście zawsze sprawdzaj, czy oprogramowanie, na którym działa Twoja witryna, jest zgodne z tą wersją PHP. Jeśli coś się zepsuje podczas aktualizacji, musisz skontaktować się z konkretnym dostawcą, aby upewnić się, że istnieje poprawka lub obejście, a może istnieje wersja, do której musisz zaktualizować.

4. Skonfiguruj OpCache dla PHP

Prawdopodobnie czytałeś w kółko, że musisz zaimplementować buforowanie przeglądarki dla swojej witryny, na przykład postępując zgodnie z tym artykułem, a także zaimplementować mechanizm buforowania plików, który faktycznie tworzy kopię Twojej witryny, aby można było je szybko obsłużyć.

Istnieje jednak trzeci poziom buforowania, którego możesz nie być świadomy, ale jest to prawdopodobnie ten, który może skrócić czas odpowiedzi serwera do mniej niż pół sekundy.

Jest to buforowanie kodu bajtowego i ma na celu przyspieszenie rzeczywistego wykonywania PHP. Sposób działania PHP polega na kompilacji skryptów w kody operacji, które są wykonywane.

Kody operacji są generowane za każdym razem, gdy wykonywany jest kod PHP. Oznacza to, że jeśli kod PHP się nie zmienia, generowanie opkodów jest stratą czasu i zasobów.

Buforowanie kodu bajtowego oszczędza czas, przechowując kody operacji w pamięci, a gdy PHP musi zostać wykonane, skompilowany kod jest pobierany z pamięci i natychmiast wykonywany.

To sprawia, że ​​wykonanie tego kodu PHP jest błyskawiczne. Połącz to z VPS, działającym na zaktualizowanym serwerze bazy danych i buforowaniem na poziomie plików witryny WordPress lub CMS, a czas odpowiedzi serwera wynosi zwykle od 200 do 400 ms.

Co ważniejsze, taki czas odpowiedzi serwera jest miarą, którą zwykle traktuje się jako pomiar, którego Google używa jako współczynnik rankingowy (TTFB), więc zwiększenie tego czasu odpowiedzi to wielka sprawa.

Istnieją różne sposoby włączenia tego, okazało się, że najlepszym sposobem na zrobienie tego dla naszej konfiguracji było włączenie konfiguracji w EasyApache4, która zawiera OpCache, a następnie odpowiednie skonfigurowanie ustawień.

Improve Website Loading Speed

5. Wybierz Nginx zamiast Apache

Nasza ostateczna rekomendacja jest nieco drastyczna i wymaga sporo zmian, ale biorąc pod uwagę, że omawiamy zaawansowane techniki, nie możemy tego pominąć.

Apache był standardowym serwerem internetowym do hostingu witryn od dosłownie dziesięcioleci, ale jego popularność spada z biegiem lat, głównie z powodu jednego silnego konkurenta – Nginx.

Improve Website Loading Speed

Ten serwer sieciowy stale zyskuje na popularności, głównie dlatego, że jest w stanie przewyższyć Apache, szczególnie w przypadku bardzo ruchliwych witryn, które muszą być w stanie zoptymalizować każdy aspekt swojej infrastruktury. Nginx zazwyczaj przewyższa Apache, jeśli chodzi o równoczesne połączenia, co oznacza, że ​​jest w stanie obsłużyć więcej użytkowników jednocześnie niż Apache.

Chociaż Nginx nie przejął Apache pod względem całkowitej liczby stron internetowych korzystających z serwera, znacznie wyprzedził Apache na 10 000 najlepszych witryn w sieci, przy czym Nginx obsługuje ponad 60% witryn, w przeciwieństwie do Apache, który obsługuje mniej niż 20%.

Biorąc pod uwagę, w jaki sposób Nginx jest w stanie przewyższyć Apache, jeśli chodzi o równoczesne połączenia, ma sens, że 10 000 najlepszych witryn, które zazwyczaj obsługują setki, a nawet tysiące na minutę, nic dziwnego, że Nginx przejmuje .

Jeśli więc Twoja witryna potrzebuje wielu połączeń, logicznym wnioskiem jest Nginx.

Oczywiście przejście z Apache na Nginx, jeśli Twoja infrastruktura jest już skonfigurowana, nie jest dla osób o słabym sercu.

Musisz

  1. Sprawdź, czy całe Twoje oprogramowanie jest w pełni kompatybilne z Nginx
  2. Zainstaluj Nginx i wszelkie dodatkowe moduły wymagane przez Twoją witrynę
  3. Przełącz wszystkie konfiguracje i strojenie dla Apache na Nginx (sposób ich konfiguracji jest inny)
  4. Zaimplementuj wszelkie dostrajanie wydajności niezbędne, aby zepchnąć serwer do granic możliwości

Najłatwiejszym sposobem na skonfigurowanie Nginx na CPanel i WHM jest użycie modułu o nazwie Engintron.

Zawijanie

Powyższe techniki nie są dla osób o słabym sercu. Wymagają one starannego rozważenia i należy przeprowadzić cały proces, aby upewnić się, że przetestowałeś swoją witrynę pod kątem wszelkich problemów, które mogą wystąpić po przeprowadzeniu tak drastycznych zmian. Jednak po wdrożeniu większości powyższych zmian z łatwością skrócisz czas ładowania witryny do mniej niż 2 sekund. A kiedy to zrobisz, zobaczysz korzyści w ciągu kilku miesięcy, z lepszymi współczynnikami odrzuceń, lepszymi rankingami i, co najważniejsze, szczęśliwszymi klientami!