Я сейчас пользуюсь xhprof
библиотека разветвленная tideways.io для профилирования myscript.php
выполнение. От xhprof
я могу получить walltime
, cputime
, memoryusage
, а также peakmemoryusage
, Я пытаюсь тестировать консоль Symfony, поэтому я добавляю TIDEWAYS_ENABLE()
на его ConsoleCommandEvent
а также TIDEWAYS_DISABLE
на его ConsoleTerminateEvent
,
Вопросы:
myscript.php
потреблять сколько процентов процессора? Могу ли я просто посчитать процент как cpuusage = cputime / realtime
как указано здесь на сервере ?memoryusage (mu)
а также peakmemoryusage (pmu)
от xhprof
профилировщик, как мне конвертировать или рассчитать его ram
использование ? (top
результат шоу намного выше чем memoryusage
но как-то рядом peakmemoryusage
значение, так что я могу сказать, что ram
использование является значением peakmemoryusage
?Заметки:
system load
, там может быть несколько scripts.php
работает одновременно.Я не уверен, что вы хотите определить, используя данные, но если вы пытаетесь провести какой-либо сравнительный анализ (например, «когда я удаляю этот цикл, он на 25% быстрее и использует на 10% меньше памяти»), я бы предложил ты используешь https://blackfire.io/.
Это легко установить и легко использовать. Он также предлагает автоматический сравнительный анализ между запросами. Он также выполняет несколько проходов внутри, чтобы убедиться, что внешние факторы усреднены.
Я не могу сказать, насколько точны данные об использовании процессора и памяти. Это определенно точно относительно других данных в blackfire — так что отлично работает, если вам просто нужно сравнить их. Если вам нужны абсолютные числа, вы должны принять это с недоверием (сколько таких сценариев безопасно для запуска на сервере 4 ГБ?). Но я бы сказал, что это довольно точно. Это определенно намного лучше, чем профиль Xdebug.
Других решений пока нет …