프로그램의 메모리가 500MB를 초과하면 PHP 프로그램을 다시 시작해야합니다. PHP 또는 셸의 모든 스크립트로 수행 할 수 있습니까?셸 명령을 사용하여 PHP 프로그램 다시 시작
답변
이 같이 당신의 PHP 스크립트 실행
php -d "memory_limit=500M" myscript.php
을 그리고 그것은 영원히 할 : 나는 장기 실행 프로그램을 처리 할 때마다
while true; do php -d "memory_limit=500M" myscript.php; done
heh ... 좋은 속임수 :) 나는 이것을위한 데몬을 사용할 것이다 ... – confiq
나는 쉘 스크립트 start.sh를 이렇게 작성했다. php -d "memory_limit = 500M"myscript.php true; ph -d "memory_limit = 500M"myscript.php; 일단 내가 세그먼테이션 오류 오류가 발생하는 프로그램을 실행 .... –
@ 램, 스크립트는 두 번째 줄만 포함해야합니다. 내 답변에서 해결책에 대한 자연스러운 진행을 보여 주려고했습니다. 나는 당신이 어떻게 세그 폴트 (segfault)를 얻는지를 보지 못했다. 이것은 PHP에서 여러분이보고하고자하는 버그 일 것입니다. (보통 PHP 스크립트를 어떻게 정상적으로 실행하고 있습니까?) – strager
, 나는 확인하기 위해 몇 가지 기본적인 도구를 포함 할 그들이 여부 그들이 작성하는 오류 등. 여기 cron으로 실행되는 빠른 스크립트를 통해 제 장비 작업자가 실행 중인지 확인할 수 있습니다.
$program = 'program.php';
// Run the cmd to get list of running programs
exec("ps aux | grep $program | awk '{print $12}'", $output);
if(count($output) == 0)
exec("php $program > /dev/null &");
물론 스크립트 출력을/dev/null로 보내지 않으려는 경우가 있습니다. 실제로 메모리 사용에 문제가있는 경우 >>
연산자를 사용하여 스크립트 출력을 임시 로그로 캡처 할 수 있습니다.
- 1. Python 프로그램 다시 시작
- 2. 셸 명령을 사용하여 MapReduce를 구현하려면 어떻게해야합니까?
- 3. 클래스의 셸 명령을 래핑하는 패턴
- 4. 다시 시작 윈도우 응용 프로그램 사용하여 점
- 5. VBA를 사용하여 셸 명령을 실행하려면 어떻게해야합니까?
- 6. Jenkins의 셸 스크립트 시작
- 7. 셸 스크립트를 사용하여 아파치 시작/중지
- 8. PHP에서 셸 명령을 동 기적으로 실행하는 방법
- 9. 시작, 중지, vb6을 사용하여 아파치를 다시 시작
- 10. 프로그램 시작 (Windows 시작)
- 11. SharePoint 응용 프로그램 풀 다시 시작 - 효과?
- 12. PHP를 사용하여 PC 다시 시작
- 13. notifyAll을 사용하여 스레드 다시 시작
- 14. 다중 셸 응용 프로그램?
- 15. android에서 셸 명령을 실행하는 방법은 무엇입니까?
- 16. 다시 시작 프로그램 실행 처리되지 않은 예외를
- 17. 단일 인스턴스 응용 프로그램 다시 시작
- 18. C# (Mono) : 프로그램 실패시 다시 시작
- 19. 매개 변수를 사용하여 프로그램 시작
- 20. php ftp로 버려진 다운로드를 다시 시작 하시겠습니까?
- 21. 셸 명령을 사용하여 MySQL 데이터베이스를 로컬 컴퓨터에 원격으로 백업
- 22. 패브릭을 사용하여 대화식 셸 명령을 수행 할 수 있습니까?
- 23. hdfs 셸 명령을 사용하여 파일이 존재하는지 여부를 확인하는 방법
- 24. 포스트 그레스를 다시 시작
- 25. 다시 시작 Teambox 서버
- 26. android : 코드 내에서 셸 명령을 실행하는 방법
- 27. Emacs 셸 명령을 찾을 수 없습니다.
- 28. PhpStorm을 사용하여 Kohana/php 시작
- 29. CakePHP에서 PHP 응용 프로그램 다시 작성하기
- 30. 시작 데몬의 GUI로 사용자 응용 프로그램 시작
이 Windows 쉘 또는 Bash 또는 ksh와 같은 제품입니까? – strager
그것은 리눅스 우분투에 있습니다. –
이것은 메모리 누출을 극복하기위한 해킹입니까? – Borealid