fbpx
Wiedza dedykowana Tobie
limit cpu serwera

Co zrobić, gdy strona przekracza limit CPU serwera?

09 lutego 2017

Powiadomienia mailowe od dostawcy hostingu i błędy 503 to sygnał, że strona za bardzo obciąża serwer. Na szczęście nie zawsze oznacza to konieczności migracji witryny na serwer wirtualny.

Pojemność, transfer i rzecz jasna cena – na te parametry hostingu większość z nas zwraca uwagę w pierwszej kolejności szukając miejsca na stronę. Jest jednak parametr, o którym przypominamy sobie zwykle dopiero wtedy, gdy w skrzynce odbiorczej znajdziemy powiadomienie od firmy hostingowej. Chodzi o limit CPU serwera.


Co to jest limit CPU serwera?

Zacznijmy od małej powtórki z wiedzy o hostingu współdzielonym. W przypadku tego typu usługi zasoby serwera są wykorzystywane przez wielu klientów. Stąd nazwa hosting współdzielony. W przypadku, gdy jeden z użytkowników nadmiernie obciąża serwer, cierpią na tym pozostali klienci – ich usługi działają wolniej. Aby zapobiec takim sytuacjom, firmy hostingowe wprowadzają ograniczenia.


Limit CPU serwera oznacza ile mocy obliczeniowej procesora może wykorzystać dany klient. Ponieważ hosting współdzielony działa na maszynach różniących się parametrami (np. taktowaniem procesora), dostawcy stosują tzw. serwer referencyjny. To swego rodzaju wzorzec, dzięki któremu klienci mają pewność, że dostaną do dyspozycji określone parametry bez względu na to, kiedy wykupią usługę i na jakiej maszynie będzie ona działać. Przykładowo, aktualne parametry serwera wzorcowego w Kei.pl to:

  • Procesor: Intel Xeon E5645 (12M Cache, 2,40 GHz, 5.86 GT/s IntelR QPI)
  • Pamięć RAM: 16 GB ECC DDR3 1333 MHz
  • Dyski twarde: 6 x 500 GB SATA 3, 7200 rpm
  • Macierz: RAID10 – Chipset LSI SAS2108

Więcej informacji o serwerze referencyjnym w Kei.pl znajdziesz w dziale Pomoc.


Co powoduje przekroczenie limitu CPU serwera?

Częstym powodem nadmiernego zużycia zasobów jest wzrost popularności witryny, szczególnie w przypadku stron generowanych dynamicznie. Popularne systemy do zarządzania treścią (np. WordPress, Joomla!) często odpytują bazy danych, co powoduje obciążenie procesora. Podobny skutek mają skrypty działające w witrynie. W efekcie im więcej internautów na stronie, tym więcej odpytań bazy, co w efekcie generuje zmożoną pracę procesorów serwera.

Statystyki wykorzystania zasobów można sprawdzić w panelu administracyjnym. Wystarczy zalogować się do panelu WebAs, w lewym menu wybrać Historia > Statystyki, a następnie przejść do zakładki Obciążenie.

limit CPU serwera - wykres


Przekroczenie dopuszczalnego limitu CPU może być objawem:

  • naturalnego rozwoju strony i rosnącej popularności,
  • jednorazowego i krótkotrwałego wzrostu liczby odwiedzin (tzw. efekt Wykopu),
  • braku optymalizacji strony i skryptów, które na niej działają.

Długotrwałe przekraczanie limitu zasobów może mieć poważne skutki takie, jak wyłączenie konta przez dostawcę hostingu lub pojawianie się błędu 503. Dlatego warto od czasu do czasu rzucić okiem na wykres obciążenia procesora i sprawdzić, czy strona nie wymaga optymalizacji.


Jak zmniejszyć wykorzystanie CPU serwera przez stronę?


Zaktualizuj CMS i wszystkie wtyczki

Aktualne wersje aplikacji, z których korzysta Twoja strona poprawią nie tylko wydajność witryny, ale dodatkowo wpłyną na jej bezpieczeństwo. Każda aktualizacja WordPressa lub Magento usuwa kolejne luki w zabezpieczeniach.


Usuń niepotrzebne i nieużywane wtyczki

Od czasu do czasu warto przejrzeć listę wtyczek i dodatków oraz spojrzeć, które z nich są nam jeszcze potrzebne. Te z nich, które nie przejdą weryfikacji, należy usunąć (a nie tylko wyłączyć). Warto zwrócić szczególną uwagę na zasobożerne wtyczki, takie jak te poniżej, służące do:

  • generowania map XML dla wyszukiwarek,
  • tłumaczenia na inne języki,
  • tworzenia zaawansowanych galerii.

Przegląd wtyczek to też dobra okazja na sprawdzenie, które z nich są aktualizowane przez twórców. Możne się zdarzyć, że choć wtyczka jest dla nas przydatna, to autorzy od dawna nie wprowadzali żadnych zmian zapewniających jej bezpieczeństwo.


Zablokuj sztuczny ruch na stronie

Chodzi o wejścia generowane nie przez ludzi, ale boty, głównie te służące do spamu. Ich celem jest między innymi pozostawianie komentarzy z linkami, które mają pomóc w pozycjonowaniu stron. Sposobem na ograniczenie ruchu botów jest zablokowanie dostępu do strony dla adresów IP, którymi posługują się spamerzy.

Blokadę można zdefiniować w pliku .htaccess dodając nazwy lub adresy IP, z których łączą się boty. Informacje jak to zrobić można znaleźć w artykule Blokowanie użytkowników po adresie IP.


Wykorzystaj pamięć podręczną (cache)

Część danych Twojej strony może zostać zapisana w cache przeglądarki użytkownika. Dzięki temu pliki są przechowywane na jego dysku twardym a odpytywanie bazy danych przy każdej wizycie nie będzie konieczne. Dodatkową zaletą tego rozwiązania jest zmniejszenie ilości transferu zużywanego przez stronę.

Lista wtyczek ułatwiających tworzenie cache dla stron działających pod WordPressem jest dostępna tutaj.


Zmniejsz rozmiar strony

Im więcej elementów jest przesyłanych z serwera do przeglądarki, tym większe obciążenie procesora i zużycie transferu. Warto przemyśleć, które elementy są naprawdę niezbędne na stronie z punktu widzenia użytkownika.

Duże przyspieszenie strony można osiągnąć przez zmniejszenie rozmiaru obrazków. Część zdjęć na stronie z pewnością możesz przeskalować do mniejszych rozdzielczości.


Zrób porządki w bazie danych

W popularnych systemach CMS, takich jak WordPress, bazy danych przechowują wiele informacji, które z czasem przestają być potrzebne. Spamowe komentarze, niewykorzystane szkice artykułów, wyłączone podstrony itp. To wszystko można bez przeszkód usunąć.


Zmiana pakietu hostingowego

Może się zdarzyć, że nawet dobrze zoptymalizowana strona powoduje powtarzające się przekroczenia limitu obciążenia CPU serwera. Czasem po prostu jest to zjawisko naturalne i wynika z rosnącej popularności witryny. Jeśli serwis działa na hostingu współdzielonym, rozwiązaniem jest zwiększenie zasobów. W Kei.pl klienci hostingowi mogą zwiększyć limit CPU serwera do 10% po kontakcie z Działem Handlowym.

Gdy powiększenie zasobów hostingu współdzielonego również przestaje wystarczać, pozostaje przeprowadzka na serwer wirtualny. Serwery VPS mają bowiem znacznie wyższe limity od hostingu współdzielonego.

Zobacz: porównanie limitów bezpieczeństwa w Kei.pl.