Страница 1 из 1

Рестарт скрипта если жрет много оперативки

Добавлено: 20 апр 2011, 18:14
sagrel
Подскажите, как в самом скрипте прописать условие, что если сколько-то оперативки занято, либо свободно осталось, то скрипт бы перезапускался и снова продолжал работу.

У суппорта получил вот это, но что с ним делать не знаю.
$debug->get_free_physical_mem_size();

Менеджер использовать не вариант, там свой глюк имеется.

Re: Рестарт скрипта если жрет много оперативки

Добавлено: 20 апр 2011, 18:31
Man
Встречал вот такое решение, но сам не пользовался

Код: Выделить всё

if ($debug->get_cur_mem_size()>268435456){

   $app->restart();

  }

Re: Рестарт скрипта если жрет много оперативки

Добавлено: 20 апр 2011, 22:59
satih
да, решение такое тоже можно

Код: Выделить всё

if ($debug->get_cur_mem_size() > 268435456){
   $app->restart(__FILE__);
}
$debug->get_cur_mem_size() возвращает занятый хуманом рам в байтах, т.е. пример выше рестартнет где-то около 268 мегабайт памяти. можно просто сделать условие раз в 50-100 циклов рестартить:

Код: Выделить всё

if ($loop_count > 100){
   $app->restart(__FILE__);
}
$loop_count++;

Re: Рестарт скрипта если жрет много оперативки

Добавлено: 21 апр 2011, 16:44
igvard
sagrel писал(а): У суппорта получил вот это, но что с ним делать не знаю.
$debug->get_free_physical_mem_size();

Менеджер использовать не вариант, там свой глюк имеется.
А можно более подробно что за глюк с менеджером?