Rozdział 17 · 17.5
503 of 'Resource Limit Is Reached': co teraz zrobić?
Otwiera Pan/Pani swoją stronę i widzi pustą, białą stronę z komunikatem 503 Service Unavailable, Resource Limit Is Reached lub The server is temporarily unable to service your request. Albo strona nagle działa bardzo wolno. Oznacza to niemal zawsze, że Pana/Pani pakiet chwilowo osiąga jeden ze swoich limitów (zob. Resource Usage: CPU, pamięć i procesy). Zwykle trwa to krótko i samo mija, ale jeśli zdarza się to częściej, warto poznać przyczynę.
Krok 1: sprawdzić Resource Usage
- W DirectAdmin proszę kliknąć w sekcji Dodatkowe funkcje na Resource Usage.
- Czy pojawia się komunikat, że limity zostały osiągnięte? Proszę kliknąć DETAILS.
- Proszę sprawdzić, przy którym wykresie widnieje Faults i w jakim momencie.
| Faults przy | Co się dzieje? | Co można zrobić? |
|---|---|---|
| Entry processes | Zbyt wiele jednoczesnych żądań. Odwiedzający otrzymują błąd 503 lub Resource Limit Is Reached. | Włączyć cache stron, zablokować boty, przyspieszyć wolne strony. |
| CPU | Zbyt duże obciążenie obliczeniowe. Wszystko działa wolniej, a żądania dłużej czekają, przez co zapełniają się też entry processes. | Znaleźć ciężkie wtyczki za pomocą X-Ray, zastosować cache, nowszą wersję PHP. |
| Physical memory | Za mało pamięci. Skrypty są przerywane. | Proszę znaleźć skrypt, który zużywa tyle pamięci; nie zwiększać memory_limit bez powodu (zob. Opcje PHP: upload_max_filesize, memory_limit i max_execution_time). |
| IO lub IOPS | Dysk jest zbyt obciążony. Strona działa wolno, zwłaszcza w panelu administracyjnym. | Duże kopie zapasowe lub importy wykonywać poza godzinami szczytu, mniej obciążające wtyczki, cache. |
| Processes | Zbyt wiele jednoczesnych procesów, na przykład przez zadania cron lub aplikacje. | Rozłożyć zadania cron w czasie (zob. Zadania Cron: automatyczne uruchamianie zadań), zrestartować zawieszone aplikacje. |
Nie widać żadnych faults? Wtedy spowolnienie nie wynika z limitów Pana/Pani pakietu. Proszę przejść od razu do kroku 3 i zmierzyć za pomocą X-Ray, gdzie znika czas.
Krok 2: sprawdzić, kto odwiedza Pana/Pani stronę
Często nie chodzi o prawdziwy ruch, lecz o bota: wyszukiwarkę, która czyta całą stronę naraz, robota AI albo kogoś, kto próbuje się zalogować tysiące razy. Proszę sprawdzić w Logach użycia (zob. Podsumowanie witryny i logi: log błędów i log dostępu) wokół momentu wystąpienia faults. Czy widać, że jeden adres IP albo jeden rodzaj bota pojawia się bardzo często, albo wiele żądań kierowanych do wp-login.php lub xmlrpc.php? W takim przypadku pomoże zablokowanie tego ruchu, na przykład za pomocą wtyczki zabezpieczającej lub reguł w pliku .htaccess.
Krok 3: znaleźć wolne strony za pomocą X-Ray
Dzięki X-Ray można sprawdzić, która wtyczka, zapytanie lub usługa zewnętrzna zajmuje najwięcej czasu (zob. X-Ray: wykrywanie wolno działających stron).
Krok 4: rozwiązania, które pomagają najbardziej
- Proszę włączyć cache. Proszę zainstalować w WordPress wtyczkę LiteSpeed Cache. Strona z cache niemal nie obciąża procesora.
- Proszę uporządkować wtyczki. Proszę usunąć te, których Pan/Pani nie używa, i zastąpić ciężkie wtyczki lżejszymi.
- Proszę zaktualizować wszystko i korzystać z nowej wersji PHP (zob. Wybór wersji PHP (Select PHP version)).
- Proszę blokować boty, które zalewają Pana/Pani stronę ruchem.
- Proszę rozdzielić swoje strony. Wszystkie domeny w jednym pakiecie dzielą te same limity. Proszę przydzielić ruchliwej stronie osobny pakiet.
- Proszę wybrać większy pakiet. Jeśli strona po prostu się rozwinęła, potrzebuje więcej mocy obliczeniowej. W Mojej WebOké proszę przejść do Moje produkty, kliknąć przy swoim pakiecie na Administracja, a następnie przy Zmień pakiet hostingowy wybrać większy pakiet. Aktualizacja następuje od razu po zapłacie, a dopłata dotyczy tylko pozostałej części bieżącego okresu rozliczeniowego.
Czy strona jest już ponownie dostępna?
Błąd 503 spowodowany limitami zwykle sam mija po kilku minutach, gdy obciążenie spada. Jeśli strona nadal jest niedostępna, proszę sprawdzić również, czy Pana/Pani adres IP nie został zablokowany (zob. Problemen z logowaniem, rozwiązywanie) oraz czy przestrzeń dyskowa nie jest pełna (zob. Przestrzeń dyskowa pełna: gdzie znika miejsce?). Jeśli problem nie zostanie rozwiązany, prosimy o założenie zgłoszenia z podaniem godziny wystąpienia awarii.
