2013-09-07 2 views
0

자정에 매일 3 개의 cron을 설정하여 PHP 파일을 실행했습니다. > 데이터베이스에서 용어 (텍스트)을 수정 해 구글에서 검색, 페이스 북, 트위터, 구글 + 저장 - a.php에, b.php를 말하고cron을 사용하여 PHP 스크립트를 동시에 실행

a.php에를 c.php처럼 모든 스크립트는 자신의 일을 결과는 데이터베이스에 저장됩니다.

는 b.php -> 우리의 웹 사이트에서 이미지를 선택합니다 결과

c.php tineye.com 데이터베이스를 검색하고 저장 -> 비즈니스 이름을 수정 해 citygrid.com에 자사의 리뷰를 검색, 구글을 장소, yelp.com 및 데이터베이스에 저장합니다.

모든 가져 오기가 끝날 때마다 다음 실행 날짜가 업데이트되므로 해당 날짜에 해당 용어/이미지/비즈니스의 데이터를 가져올 수 있습니다.

내 문제는 내가 데이터베이스에서 단지 몇 가지 기록이 업데이트되지 않습니다 dB 나중에 기록을 가져와 업데이트 본 적이

하나입니다. 이는 시작 조건에 대한 데이터를 가져 오는 동안 실행 시간이 만료되고 계속되지 않기 때문일 수 있습니다. 나는 max_execution_time을 100000으로 늘려 보았지만 아무런 운이 없었습니다.

둘, 나는 a.php를 봅니다. b.php와 c.php는 동시에 시작하지 않습니다.

구문은 내가 사용 :

0 0 * * * /usr/bin/php /var/www/html/a.php 
0 0 * * * /usr/bin/php /var/www/html/b.php 
0 0 * * * /usr/bin/php /var/www/html/c.php 

나는 그것을 가장 잘 작동하도록 천재에서 조언이 필요합니다.

+0

문제가 PHP 코드에 있다면, 우리가 cron 항목을 보는 데별로 도움이되지 않습니다 ... cron이 버그라고 제안하고 있습니까? –

+0

모든 PHP 스크립트는 개별적으로 실행될 때 잘 작동합니다. 크론은 한 번에 달리지 않습니다. 첫 번째 cron이 실행/완료되면 두 번째 크론이 실행되고 두 번째 크론이 완료되면 세 번째 실행이 시작됩니다. 그래서 나는 다른 cron을 기다리지 않고 독립적으로 실행하는 방법을 알고 싶다. 또 다른 사실은 max_execution_time이 영향을 미치는지 여부입니다. 모든 스크립트는 데이터베이스에서 데이터를 가져와 Google, 페이스 북, 트위터 및 Google +에서 검색 한 다음 처리하여 데이터베이스에 결과를 저장해야하므로 많은 시간이 필요합니다. –

+0

그런 경우라면, 리눅스의 적절한 맛을 위해 개발 팀에 연락하여 cron에 근본적인 버그가 있다는 것을 알려주는 것이 좋습니다 ... cron은 한 번에 하나의 작업 만 실행하면 안되지만 모든 것을 트리거해야합니다 필요한 경우 동시에 작업 수행 –

답변

1

PHP를 명령 줄 (/ usr/bin/php)에서 실행할 때 max_execution 시간이 없습니다. max_execution은 웹 서버에서 PHP를 사용할 때만 사용됩니다.

스크립트를 수동으로 실행할 때 출력 디버깅을 시도하고, error_reporting을 E_ALL로 설정하고 많은 디버그 정보를 출력하십시오. 나는 메시지 나 그와 같은 것이 없어도 죽을 수 있도록 스크립트에 문제가 있다고 생각합니다.

+0

모든 PHP 스크립트는 개별적으로 실행될 때 잘 작동합니다. 크론은 한 번에 달리지 않습니다. 첫 번째 cron이 실행/완료되면 두 번째 크론이 실행되고 두 번째 크론이 완료되면 세 번째 실행이 시작됩니다. 그래서 나는 다른 cron을 기다리지 않고 독립적으로 실행하는 방법을 알고 싶다. 또 다른 사실은 max_execution_time이 영향을 미치는지 여부입니다. 모든 스크립트는 데이터베이스에서 데이터를 가져와 Google, 페이스 북, 트위터 및 Google +에서 검색 한 다음 처리하여 데이터베이스에 결과를 저장해야하므로 많은 시간이 필요합니다. –

관련 문제