Pergunta

Se eu tenho um trabalho em segundo plano php, talvez seja necessário executar 4-5hours ou mais isso vai causar exceção no memory_limit

Foi útil?

Solução

PHP tem um gerenciador de memória muito primitivo e scripts não são projetados para funcionar por muito tempo. Você pode atualizar o limite de memória como esta:

<?php ini_set(“memory_limit”,”256M”); ?>

Mas você provavelmente ainda tem problemas de memória. Você poderia tentar adicionar uma tonelada de unset () 's para o seu script e isso pode ajudar um pouco. Mas os vazamentos de memória são provavelmente em PHP e suas extensões C / C ++, que você não pode controlar. No passado, tive de reescrever tarefas em segundo plano em Java.

Outras dicas

Em seus php.ini aumentar a quantidade de memory_limit.

http://www.ducea.com / 2008/02/14 / aumento-php-memory-limit /

Confira os seguintes comandos PHP:

// Sets the max time in seconds the script can run
set_time_limit($sec);
// Increases the memory limit (default is 1.5mb)
ini_set("memory_limit", "256M");
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top