У меня php script работает как задание cron, широко используя сторонний код. script сам имеет несколько тысяч LOC. В основном это импорт/обработка данных script. (JSON для MySQL, но он также делает много HTTP-вызовов и некоторых SOAP).
Теперь производительность понижается со временем. При тестировании с несколькими записями (около 100) производительность работает нормально, это делается через 10-20 минут. При запуске цельного импорта (около 1600 записей) среднее время импорта одной записи постоянно растет, а целая вещь занимает более 24 часов, поэтому по крайней мере в 5 раз дольше, чем ожидалось.
Память, похоже, не проблема, использование растет как следует, без неожиданных пиков.
Итак, мне нужно отладить его, чтобы найти узкое место. Это может быть проблема с script, базовой базой кода, самой php, базой данных, os или сетевой частью. На данный момент я подозреваю какое-то кэширование где-то, что плохо ведет себя с почти 100% -ным отсутствием отношения.
Я не могу использовать XDebug, файл профиля растет слишком быстро, чтобы поддаваться лечению.
Итак, вопрос: как я могу отладить этот вид script?
Версия PHP: 5.4.41 ОС: Debian 7.8 При необходимости я могу иметь привилегии root и устанавливать инструменты. Но это производственный сервер и, в идеале, отладка не должна слишком прерываться.