Jak sprawdzić, czemu moja strona działa wolno

Czasami strona działa www działa wolno. Niekiedy pojawia się błąd 500 (internal serwer error) lub 508 (508 resource limit is reached) i nie wiadomo z czego on wynika. Powodów może być wiele. W cPanelu na hostingu smarthost.pl można samodzielnie zdiagnozować wiele z przyczyn.

Jednym z sposobów na weryfikację, gdzie leży problem, jest skorzystanie z gotowej opcji która znajduje się w cPanelu, dzięki niej można sprawdzić które konkretnie pliki powodują obciążenie zasobów serwera.

Aby sprawdzić obciążenie na naszym koncie hostingowym, należy z poziomu cPanelu wejść w „Użycie procesora i połączenia równoczesnego” w zakładce „Metryki”

Należy wejść w zakładkę [Szczegóły] bądź [Snapshots]

Mamy tutaj możliwość sprawdzenia z konkretnego dnia w których godzinach były przeciążenia serwera i co je powodowało.

Każdy z klientów ma stałe, przypisane mu parametry, które są przydzielone na wyłączność (pamięć procesor, liczba procesów, odczyt z dysków) – dlatego też, jeżeli występują podbicia użycia, któregoś z tych parametrów do ustawionych limitów trzeba szukać rozwiązania w aplikacji.

Zakładka [Szczegóły]

W tej zakładce możemy spojrzeć jak wygląda zużycie na przestrzeni okresu czasu. Czas ten można ustawić – żeby zobaczyć okres od „ostatnich 10 minut”, aż do dowolnie ustalonego zakresu dat.

Zakładka [Snapshots]

Process List – wykaże pliki które powodują obciążenie oraz nada im wartości w ilu procentach dany plik wpływa na obciążenie procesora i pamięci

Na poniższym screenie widać, że plik index.php w katalogu public_html powoduje zużycie pamięci ram oraz procesora.

Najczęstszymi powodami wysokiego użycia CPU oraz  pamięci RAM są:

– słaba optymalizacja strony

– nagły wzrost liczby odwiedzin na stronie

– złe ustawienie procesów PHP/Cron (wywoływanie w tym samym momencie)

–  nadmierna liczba wtyczek

Błąd 500

Jest to komunikat, który najczęściej występuje, gdy na serwerze stało się coś nieoczekiwanego i sam serwer nie jest w stanie wysłać konkretnej informacji. Strona wyświetla komunikat z błędem, a nie normalną stronę.

Najczęstsze przyczyny:

– źle nadane uprawnienia dla katalogów i plików,

– błąd połączenia z bazą danych,

– przekroczenie dostępnych zasobów serwera,

– niepoprawne wpisy w pliku .htaccess.

Błąd 508 (Resource Limit Is Reached)

Przekroczenie limitów powodujące błąd 508 związane jest z obciążeniem serwera działaniem aplikacji klienta. Błąd 508 zwykle pojawia się z powodu błędnej konfiguracji po stronie użytkownika, które powodują bardzo duże użycie zasobów.

Najczęstsze przyczyny:

– atak DoS lub DDoS na konkretną stronę,

– ataki na niezabezpieczone formularze logowania, pliki xml.rpc,

– brak optymalizacji strony,

– marnej jakości szablony/motywy/wtyczki, które powodują wiele równoległych wywołań, zamiast agregować zapytania i wywoływania,

– używanie zapytań do bazy danych bez indeksów, lub zapytań bardzo „ciężkich”, długo się wykonujących,

– umieszczenie na jednym koncie hostingowym bardzo dużej liczby normalnie odwiedzanych stron internetowych,

– bardzo duży wzrost np. legalnego ruchu na stronie.

Większość z powyższych przyczyn można zdiagnozować w cPanelu pod ikoną „Użycie procesora i połączenia równoczesnego”.

Rozwiązania które mogą poprawić działanie strony:

1. Optymalizacja strony

Bardzo często strona wymaga optymalizacji pod względem kodu strony oraz z powodu przeciążeń ze względu na dużą ilość odsłon co może przerywać połączenie z bazą danych co z kolei wpływa na przekroczenie limitów. Warto zwrócić uwagę na zapytania do bazy danych: zapytanie bez indeksów potrafią mocno zwolnić działanie strony – w razie wątpliwości warto skonsultować się z developerem budującym stronę.

2. Zmniejszenie rozmiarów plików

Aby strona działała poprawnie, należy zająć się również optymalizacją zdjęć i plików, gdyż duże rozmiary tych plików potrafią znacznie wpłynąć na działanie strony. Zaleca się aby zdjęcia nie przekraczały rozmiaru 1MB oraz ważny jest wybór odpowiedniego formatu zdjęć.

3. Redukcja liczby wtyczek

Korzystając z WordPress bądź Joomla! mamy dostęp do wielu wtyczek, jednakże nadmiar wtyczek może powodować znaczny spadek wydajności strony, dlatego też zalecane jest stosowanie tylko i wyłącznie wtyczek które są nam niezbędne. Niepotrzebne dodatki należy wyłączyć (a najlepiej całkiem usunąć).

4. Aktualizacje systemu CMS aplikacji

Aplikację powinniśmy aktualizować regularnie, ze względu na ciągłe poprawy wydajności i optymalizację w nowszych wersjach.

5. Zastosowanie – cache

Dzięki pamięci podręcznej możemy znacznie zwiększyć prędkość działania strony, używając pamięci cache część plików zapisuje się na komputerze użytkownika, co wpływa na znaczą poprawę wydajności przy ponownym wejściu na stronę. Cache jest kluczowy – może być po stronie serwera (np. użycie silnika redisa, memcache lub cache plikowy z użyciem wtyczek np. dla WordPress W3totalcache. Można tez włączyć cache niektórych elementów w przeglądarce klienta.

6. Zmniejszenie żądań HTTP

Kiedy użytkownicy wchodzą na stronę, przeglądarka wykonuje kilka żądań załadowania każdego z tych plików – co znacznie wpływa na szybkość ładowania stron. W tym wypadku należy ograniczyć pliki .js .css oraz pliki graficzne

7. Zmiana wersji PHP

Bardzo często używane są stare wersję PHP które w obecnych czasach mają negatywny wpływ na działanie strony, zalecane jest przejście na najnowszą wersję PHP – co powinno znacznie poprawić wydajność strony.

O wydajności poszczególnych wersji PHP mogą Państwo przeczytać w innym artykule na naszym blogu: https://www.smarthost.pl/blog/wdrazamy-php-7-3-i-porownujemy-je-z-innymi-wersjami

8. Zmiana pakietu

Może się zdarzyć, że aktualny plan hostingowy nie jest wystarczający – należy wtedy skontaktować się z jednym z naszych konsultantów
aby zaproponował on odpowiedni plan dla potrzeb klienta. W naszej ofercie posiadamy pakiety elastic o dużych zasobach ale jest to ostateczność – zawsze lepiej najpierw zoptymalizować swoją stronę niż zwiększać zasoby

Podsumowanie

Na wolne ładowanie się strony oraz na błędy różnego rodzaju może wpływać wiele czynników, najczęściej jest to słaba optymalizacja strony/aplikacji dlatego kluczowe jest wykrycie co powoduje zwolnienie strony oraz jej błędy i jak najszybsze wyeliminowanie tych problemów.

Polecamy serwis, w którym można poczytać na temat optymalizacji popularnych systemów: Joomla! oraz WordPress: https://www.100punktow.pl 

Udostępnij ten artykuł na Facebooku:

Dodaj komentarz