Как лучше всего увидеть разбивку использования ЦП для данного процесса? [закрыто]

Я пытаюсь найти узкие места и в настоящее время регистрирую время в скрипте, но, похоже, это случайное время для определенных операций. Есть ли инструмент, который позволит мне увидеть разбивку того, что происходит во время определенного запроса [apache], чтобы отследить, горит ли ЦП все время или он ждет чего-то еще?

0
задан 24 November 2009 в 06:18
4 ответа

Это - вопрос профилирования; необходимо ли поднять трубку профильный инструмент к процессу и получить ли его, что действительно продолжается. Для действительно профильного плохого человека я просто присоединяю к нему с помощью strace; использование флагов синхронизации (-T -r) обычно дает мне хорошую идею того, какие системные вызовы занимают время, и стачивается ли сам процесс просто вперед. Там существуют лучшие вещи, но они более ориентированы разработчиками.

1
ответ дан 23 November 2019 в 13:22

Если Вы используете окна OS, то бесплатные инструменты от SysInternals могли бы быть лучшим местом для запуска. Инструмент Process Explorer довольно хорош в наблюдении активных процессов, что называет их, и какие действия происходят. SysInternals делает довольно легким загрузить Комплект SysInternals инструментов. Это отчасти похоже на карту American Express, не уезжайте из дома с ним.

Надежда это помогает некоторым.

0
ответ дан 23 November 2019 в 13:22

Что-то еще для проверки, Если Вы можете, должно контролировать производительность сервера.

Возможно, Ваши дисковые очереди пронзают, возможно, у Вас есть сбойный диск в RAID, возможно, у Вас заканчивается память и т.д...

0
ответ дан 23 November 2019 в 13:22

Вы видите еще некоторую деталь с инструментом как procstat. Вы подаете его PID, и это декодирует/proc/файл $pid/stat, который может сказать Вам некоторый интересный материал внутренностей, как количество мига ЦП, который это использовало, или его дети использовали.

0
ответ дан 23 November 2019 в 13:22

Теги

Похожие вопросы