PHP — Out of memory — куда уходит память?

Есть скрипт который во время работы выкидывает Out of Memory — ясно что где-то что то не освобождается.


Как можно определить где? Как можно посмотреть какие переменные сколько место в памяти занимают в момент ошибки?

XDebug поможет?
  • Вопрос задан
  • 4506 просмотров
Пригласить эксперта
Ответы на вопрос 6
Aco
@Aco
Заклинатель кода
Рекомендую memtrack. Позволит построчно отображать кто что съел. Если это крон, то лучше ещё вызывать коллектор gc_collect_cycles. И проверьте что сборщик мусора вообще включен.
Ответ написан
Комментировать
Perkov
@Perkov
memory_get_usage но оно только обую занятость по памяти покажет.
unset() в нужном месте может многое.
Ответ написан
XDebug поможет
Ответ написан
Комментировать
Xdebug + KCachegrind + easy XDebug (firefox).
Ответ написан
Quiz
@Quiz
Поможет XDebug и много удачи.
Я бы в первую очередь обратил внимание на рекурсивные функции и ресурсоёмкие запросы к БД.
Ответ написан
Комментировать
jah
@jah
куда уходит память
в какие города
и где найти нам средство…
:)

попробуйте порыть здесь:
forum.dklab.ru/comments/nablas/45ProPerehvatIObrabotkuFatalnihOshibokFatalErrorVPhp.html
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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