나는 ajax를 통해 시작된 PHP 스크립트를 가지고있다. 이 PHP 스크립트는 exec()를 사용하여 쉘을 통해 별도의 PHP 스크립트를 실행합니다.Ajax/PHP - 장기 실행 스크립트 또는 폴링을 하나만 사용해야합니까?
exec()를 통해 호출 된 스크립트를 완료하는 데 30 초 정도 걸릴 수 있습니다. UI가 끝나면 업데이트해야합니다.
어떤 옵션이 선호됩니까?
a) HTTP 연결을 30 초 동안 열어두고 끝날 때까지 기다리십시오.
b) exec() 백그라운드에서 PHP 스크립트를 실행 한 다음 ajax 폴링을 사용하여 완료를 확인합니다 (5 초마다).
c) 내가 생각하지 못했던 다른 것.
감사합니다. Brian
PHP의 set_time_limit() 함수와 Apache의 KeepAliveTimeout 설정을 사용하여이 문제를 해결할 수 있습니까? – Brian
게시 할 수있는 문제에 대해서는 좋은 옵션이 아닙니다. 내가 준 솔루션이 최선의 선택입니다. 그곳에 갔었 어. –