2011-11-08 5 views
0

내 PHP 스크립트에서이 무한 루프가 매초마다 실행되지만 결국 멈출 것입니다. php.ini에서 값을 변경하거나 최대 실행 시간을 주석 처리하거나 심지어 set_time_limit (9999)를 넣으려고했습니다. 내 PHP 스크립트와 나는 여전히 예기치 않은 시간, 몇 초 또는 1 분 후에 중지합니다! 무한 반복 시간을 지원하기 위해이 시간 제한을 설정할 수있는 곳은 어디입니까?예기치 않은 시간 동안 무한 PHP while 루프에서 자체 중지

+0

PHP는 오랫동안 실행되도록 설계되지 않았습니다. 예기치 않은 메모리 누수가 발생할 수 있습니다. 오랫동안 잘 돌아가는 PHP 스크립트에 대한 경험이 있었고, 갑자기 서버에서 사용 가능한 메모리를 모두 소비하여 서버를 잠그고있었습니다. –

답변

1

명령 줄에서 스크립트를 실행하십시오.

0
<?php 

while (true) { 
    set_time_limit(10); // 10 seconds allowed to reach next iteration 
    usleep(1000); 
} 

잘 작동해야합니까? 또한 메모리 소비량을 확인하십시오. 오류 로깅을 사용하면 스크립트가 오류로 인해 중지되는지 확인할 수 있습니다.

0

사용하는 웹 서버는 무엇입니까? 원격 호스팅에서 실행할 경우 lighttpd와 같은 프론트 엔드 웹 서버에 문제가있을 수 있습니다. 이 상황에서 해결 방법이 없습니다.