Подскажите, как в самом скрипте прописать условие, что если сколько-то оперативки занято, либо свободно осталось, то скрипт бы перезапускался и снова продолжал работу.
У суппорта получил вот это, но что с ним делать не знаю.
$debug->get_free_physical_mem_size();
Менеджер использовать не вариант, там свой глюк имеется.
Рестарт скрипта если жрет много оперативки
Re: Рестарт скрипта если жрет много оперативки
Встречал вот такое решение, но сам не пользовался
Код: Выделить всё
if ($debug->get_cur_mem_size()>268435456){
$app->restart();
}
Re: Рестарт скрипта если жрет много оперативки
да, решение такое тоже можно$debug->get_cur_mem_size() возвращает занятый хуманом рам в байтах, т.е. пример выше рестартнет где-то около 268 мегабайт памяти. можно просто сделать условие раз в 50-100 циклов рестартить:
Код: Выделить всё
if ($debug->get_cur_mem_size() > 268435456){
$app->restart(__FILE__);
}
Код: Выделить всё
if ($loop_count > 100){
$app->restart(__FILE__);
}
$loop_count++;
Re: Рестарт скрипта если жрет много оперативки
А можно более подробно что за глюк с менеджером?sagrel писал(а): У суппорта получил вот это, но что с ним делать не знаю.
$debug->get_free_physical_mem_size();
Менеджер использовать не вариант, там свой глюк имеется.