Wysokie zużycie procesora PHP-fpm56, Jak zidentyfikować co zajmuje tyle zasobów |
Wysokie zużycie procesora PHP-fpm56, Jak zidentyfikować co zajmuje tyle zasobów |
5.08.2017, 11:00:00
Post
#1
|
|
Grupa: Zarejestrowani Postów: 88 Pomógł: 0 Dołączył: 30.03.2009 Ostrzeżenie: (0%) |
Witam,
Dostałem dostęp do strony która chodzi b. wolno. Zalogowałem się do serwera przez ssh i po uruchomieniu komendy top Okazuje się że proces PHP-fpm56 powoduje ze obciążenie procesora jest ok 97 cały czas W jakis sposób można się dowiedzieć co dokładnie powoduje takie obciążenie. W jednej chwili jest ok 40osób na stronie. Strona ma generator w którym generuje pliki wykorzystując canvas 9 core 18GB ram Proszę o wskazówki w jaki sposób można zidentyfikować problem. Dostawca serwera napisał mi tak: Problem lezy po stronie skryptow lub uderzenia ruchu. Z naszej strony mozemy probowac jedynie zwiekszac zasoby serwera. |
|
|
5.08.2017, 12:33:02
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 592 Pomógł: 445 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Zgraj sobie kod, odpal lokalnie (jakiś Docker w tej samej konfiguracji co serwer), dodaj xdebug z włączonym profilerem.
Następnie użyj jakiegoś narzędzia do analizy i zobacz gdzie jest wąskie gardło. https://xdebug.org/docs/profiler -------------------- |
|
|
8.08.2017, 10:27:22
Post
#3
|
|
Grupa: Zarejestrowani Postów: 88 Pomógł: 0 Dołączył: 30.03.2009 Ostrzeżenie: (0%) |
Dzięki,
Walczę z przekierowaniami bo na localhost wrzuca mnie w adres tej strony muszę pogrzebać w ustawieniach. Ustaliłem, że jeden ze skryptów generujący 18 obrazów za każdym razem ładowania odpowiedniej strony wykorzystuje dużo zasobów procesora. Wywaliłem jest duża poprawa. Teraz walczę z pamięcią bo jej wykorzystanie rośnie do prawie 18GB czyli max. Procesy php-fpm56 w stanie S czasami zajmują nawet 600mb Czy to jakiś leak memory? Czekam na email z ustawieniami php-fpm od administratora serwera. Wczoraj monitorowałem wszystko za pomocą HTOP i pokazywał wysokie zużycie dziś mam w cached memory ok 10GB (być może admin serwera coś zmienił) i nie ma żadnych alertów na temat pamięci. HTOP odejmuje chyba cached oraz swap z całkowitej użytej pamięci. Zwykłe polecenie TOP pokazuje, że używam 18GB właśnie doszła konfiguracja Kod user = $pool group = $pool listen = /usr/local/php56/sockets/$pool.sock listen.owner = $pool listen.group = apache listen.mode = 660 pm = ondemand pm.max_children = 50 pm.process_idle_timeout = 20 A tu jak wyglądają procey Ten post edytował nikos 8.08.2017, 10:46:56 |
|
|
Wersja Lo-Fi | Aktualny czas: 23.04.2024 - 08:00 |