Przekroczenie limitu zasobów serwera może spowolnić stronę lub wywołać błąd 508. Dotyczy to między innymi limitów CPU, RAM, procesów, pracowników PHP, operacji dyskowych, inodów i transferu.
Spis treści
Co oznacza limit zasobów serwera?
Zasób fizyczny to część infrastruktury potrzebna do obsługi żądań, na przykład moc procesora, pamięć RAM albo wydajność dysku. Quota konta to limit przypisany do konkretnego konta, niezależnie od całkowitej pojemności serwera. Limit współbieżności określa natomiast, ile zadań może być wykonywanych w tym samym czasie.
Panel może więc pokazywać osobno zużycie procesora, pamięci, procesów i operacji dyskowych. Każdy z tych pomiarów opisuje inny etap obsługi strony. Niski poziom jednego zasobu nie oznacza, że pozostałe zasoby są dostępne bez ograniczeń.
CPU: moc potrzebna do wykonywania zadań
CPU, czyli procesor, wykonuje instrukcje potrzebne do zbudowania strony, uruchomienia skryptów i obsługi żądań. Wysokie, utrzymujące się użycie CPU może powodować dłuższe oczekiwanie na odpowiedź serwera. Gdy limit zostanie osiągnięty, kolejne zadania mogą czekać na wykonanie, a żądanie może zakończyć się błędem związanym z limitem zasobów.
W praktyce krótkie zwiększenie użycia CPU nie musi oznaczać problemu. Istotne jest to, czy jest to chwilowy skok, czy długotrwałe obciążenie. Rozróżnienie między krótkim skokiem a stałym zużyciem jest podstawą interpretacji limitów serwera. Opis limitów zasobów serwera wiąże użycie CPU z wykonywaniem stron i skryptów oraz rozróżnia stałe zużycie od krótkich skoków.
RAM: pamięć używana podczas pracy strony
RAM przechowuje dane potrzebne procesom w trakcie ich działania. Strona może zużywać pamięć podczas generowania odpowiedzi, wykonywania skryptów lub obsługi wielu zadań jednocześnie. Po osiągnięciu limitu RAM nowe zadania mogą czekać, zakończyć się błędem albo działać wolniej.
Wysokie zużycie RAM i wysokie zużycie CPU nie zawsze występują razem. Proces może potrzebować dużo pamięci, ale niewielkiej mocy procesora. Dlatego wolne działanie strony może pojawić się przy prawidłowym poziomie CPU, jeśli ograniczeniem jest pamięć.
Procesy i pracownicy PHP: limity równoczesnych zadań
Proces to uruchomione zadanie na serwerze. Pracownik PHP, nazywany też PHP workerem, obsługuje żądanie wymagające wykonania kodu PHP. Limit procesów lub workerów nie opisuje całkowitej mocy serwera. Określa, ile zadań może być wykonywanych równocześnie.
Jeśli wszystkie dostępne procesy lub workery są zajęte, nowe żądania ustawiają się w kolejce. Objawem może być długi czas odpowiedzi, opóźnienie wczytywania strony albo błąd, mimo że CPU i RAM nie osiągnęły swoich wartości granicznych. Ten typ ograniczenia dotyczy współbieżności, czyli liczby zadań obsługiwanych w tym samym czasie.
Storage I/O: szybkość operacji na dysku
Storage I/O oznacza operacje odczytu i zapisu danych na dysku. Limit może dotyczyć liczby operacji albo ilości danych obsługiwanych w określonym czasie. Gdy dysk jest intensywnie używany, zadania oczekujące na odczyt lub zapis mogą wykonywać się wolniej.
Wolne działanie strony przy niskim użyciu CPU może więc wynikać z oczekiwania na dysk. Dotyczy to sytuacji, w której procesor nie wykonuje pracy, ponieważ czeka na dane albo zakończenie operacji zapisu.
Przestrzeń dyskowa i inody
Przestrzeń dyskowa określa, ile miejsca zajmują pliki, bazy danych i inne dane konta. Inody opisują liczbę obiektów systemu plików, takich jak pliki, katalogi i elementy przechowywane na koncie.
Duża ilość wolnego miejsca nie oznacza niskiego wykorzystania inode. Konto może zawierać wiele małych plików i osiągnąć limit inode, mimo że ich łączny rozmiar pozostaje niewielki. Jest to inny limit niż pojemność dysku. Z kolei wolne miejsce i prawidłowy poziom inode nie wykluczają problemu z CPU, RAM, workerami PHP lub I/O.
Transfer: ilość przesyłanych danych
Transfer, czyli bandwidth, określa ilość danych przesyłanych między serwerem a użytkownikami. Obejmuje dane pobierane podczas otwierania stron i plików oraz dane wysyłane do serwera.
Wykorzystanie transferu i szybkość generowania strony to różne kwestie. Strona może działać wolno z powodu CPU, RAM, kolejki procesów lub operacji dyskowych, nawet jeśli limit transferu nie jest bliski wyczerpania. Wolna strona nie oznacza automatycznie problemu z bandwidth.
Stałe obciążenie a krótkie skoki
Krótki skok zużycia pojawia się podczas chwilowego zwiększenia liczby zadań lub ruchu. Stałe obciążenie utrzymuje się przez dłuższy czas i regularnie zajmuje dostępne zasoby. Te sytuacje mają inne znaczenie diagnostyczne.
- Krótki skok: pojedyncze opóźnienie lub chwilowe oczekiwanie na zasób.
- Stałe obciążenie: powtarzające się spowolnienia, kolejki zadań i większe ryzyko błędów limitu.
Komunikat 508 „Resource Limit Reached” oznacza, że konto osiągnęło określony limit zasobów. Przy analizie trzeba sprawdzić, który zasób został przekroczony oraz czy zużycie było chwilowe, czy utrzymywało się przez dłuższy czas.
Dlaczego wolna strona może mieć wolny transfer i dużo miejsca?
Wolne miejsce odpowiada za pojemność, a transfer za ilość przesyłanych danych. Żaden z tych pomiarów nie opisuje bezpośrednio czasu potrzebnego na wykonanie kodu, dostępnej pamięci, liczby równoczesnych zadań ani czasu operacji dyskowych.
Dlatego diagnozę należy zacząć od porównania kilku wartości. Sprawdź CPU, RAM, liczbę procesów lub workerów PHP oraz storage I/O. Następnie porównaj moment spowolnienia z wykresem obciążenia. Taki odczyt pomaga odróżnić chwilowy skok od limitu osiąganego regularnie.
Jak interpretować zasoby w Elastycznym Web Hostingu?
Elastyczny Web Hosting dopasowuje zasoby do aktualnego ruchu i obciążenia strony. Przy większym obciążeniu może zwiększać moc CPU, RAM i przestrzeń, a po spadku obciążenia wracać do poziomu bazowego. Odczyt zasobów trzeba więc wiązać z aktualnym ruchem i czasem pomiaru, a nie tylko z pojedynczą wartością.
Najważniejsza zasada jest prosta: wolne miejsce i dostępny transfer nie potwierdzają, że strona ma wolne CPU, pamięć lub wolne workery PHP. Każdy limit opisuje inny warunek obsługi witryny.
