2014-03-25 2 views
0

안녕하세요! 잠재적 인 답변을 제시해 주셔서 감사합니다. 기본적으로 백그라운드에서 실행하려면 두 개의 쉘 명령이 필요하므로 내 웹 사이트 사용자는 웹 사이트 탐색을 위해 프로세스가 완료 될 때까지 기다릴 필요가 없습니다. 그러나이 두 명령은 서로 영향을 줄 때 동시에 실행할 수 없습니다. 두 번째 사람은 첫 번째 후 실행해야합니다. 내 코드의 중요한 부분은 아래에서 찾을 수 있습니다!오버랩없이 백그라운드에서 여러 명령 실행하기 (PHP 및 Ubuntu)

shell_exec("sudo " . $command . ">> /dev/null &1"); 
shell_exec("sudo make all install >> /dev/null &1"); 

비동기 적으로 실행할 수있는 방법이 있습니까?

감사합니다.

+0

['man bash'] (http://linux.die.net/man/1/bash), 목록 섹션을 참조하십시오. – Animism

답변

0

당신은 아마도 대기열 솔루션 중 하나를 사용하는 것이 좋습니다. 셸 실행 작업을 대기열에 넣고 사용자에게 신속하게 반환하고 단일 스레드의 프로세스와 같은 데몬에서는 대기중인 작업을 읽고 실행합니다. 아주 좋은 php friendly queue 솔루션은 pheanstalk PHP 라이브러리가있는 beanstalk입니다.

관련 문제