Mam proces python (Pylons webapp), która jest stale przy użyciu 10-30% CPU. Poprawię/dostroję rejestrowanie, aby uzyskać wgląd w to, co się dzieje, ale do tego czasu, czy są jakieś narzędzia/techniki, które pozwalają zobaczyć, co robi proces Pythona, ile i jak bardzo wątki mają itd.?Badanie procesu Pythona, aby zobaczyć, co się jedzenia CPU
Aktualizacja:
- skonfigurowany dostęp do dziennika, który pokazuje, że nie istnieją żadne wnioski dzieje, webapp jest tylko na biegu jałowym
- sensu podłączyć paste.profile w łańcuchu middleware ponieważ nie istnieją żadne wnioski działalność musi się dziać zarówno w wątków roboczych webapp lub pastowania serwer WWW
- bieg naklejka jak ten: „python -m cProfile -o plik_wy/usr/bin/naklejka służyć dev.ini” i sprawdzania wyników pokazuje, że większość czasu spędza w "posix.waitpid". Paster biegnie webapp w podproces, aktywność podproces nie jest odbierane przez profilera
- patrząc; hacking PasteScript „służyć” polecenia, tak aby podprocesów dostanie profilowane
Kolejna zmiana:
Po wielu majsterkowania , przyklejania profilera w różnych miejscach i poznania wnętrza PasteScript, odkryłem, że stałe obciążenie CPU odchodzi jeśli aplikacja jest uruchomiona bez parametru „--reload” (ta flaga mówi pastowania, aby ponownie się, czy zmiany w kodzie, poręczny w rozwoju), co jest dobre w środowisku produkcyjnym.
Jaki system operacyjny? – mavnn