У меня есть root-доступ к виртуальному частному серверу (на Dreamhost), на котором я размещаю свои веб-сайты. Я ограничен ОЗУ (в настоящее время 500 МБ), поэтому, если один сайт (сценарий этого сайта) требует слишком много ОЗУ, весь мой VPS отключается и перезапускается, а вместе с ним и все остальные сайты!
Мое среднее использование составляет около 100 МБ, так что это далеко не предел, но каким-то образом какой-то скрипт все еще делает это: запрашивает слишком много оперативной памяти, а затем сторожевой таймер Dreamhost убивает мой VPS. Все это происходит за миллисекунды (так говорят), и я не могу легко узнать, что происходит.
Как я могу узнать, какой сценарий вызывает это? Dreamhost не помог в этом, и я не совсем лучший хакер Linux :).
Все мои сайты размещены на Apache и все на PHP.
Уменьшите ограничение памяти PHP до более низкого значения (memory_limit
config var в php.ini
); сценарий, занимающий всю память, выдаст ошибку, и это определит проблему. Если проблема по-прежнему возникает без видимой ошибки, продолжайте снижать ограничение памяти. Если все начинает ошибаться, вы слишком далеко его уронили. Если вы не можете найти золотую середину между «все умирает» и «ничто не умирает», подумайте о том, что на самом деле это не PHP-скрипт, занимающий всю вашу память, и начните искать другие возможности (задания cron, задания фоновой обработки, Такие вещи).