On Mon, Sep 29, 2008 at 11:59 AM, Nathan Rixham <nrixham@xxxxxxxxx> wrote: > Shawn McKenzie wrote: >> >> Shawn McKenzie wrote: >>> >>> Waynn Lue wrote: >>>> >>>> Yup, you're completely right. I checked the cronjob and got this: >>>> >>>> PHP 5.2.6 (cgi) (built: Aug 11 2008 13:39:32) >>>> Copyright (c) 1997-2008 The PHP Group >>>> Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies >>>> with Advanced PHP Debugger (APD) v0.9, , by George Schlossnagle >>>> >>>> Turns out there's /usr/bin/php, which is the cgi version, and >>>> /usr/local/bin/php, which is the cli version. So I see three >>>> possiblities. >>>> 1. Change the shebang on the php script itself, 2. change the crontab to >>>> reflect to path I care about, or 3. replace /usr/bin/php. I'd prefer >>>> the >>>> 3rd, but does that cause problems for me in my actual web pages? >>>> >>>> Thanks, >>>> Waynn >>>> >>> Depends upon whether your webserver is using the PHP CGI binary or the >>> apache module. I thought common convention was that the CGI was named >>> php-cgi? >>> >>> I would rename '/usr/bin/php' to '/usr/bin/php-cgi', grep your web >>> server conf file(s) for /usr/bin/php and if found then change it to >>> /usr/bin/php-cgi. >>> >>> -Shawn >>> >> Along with that, I would opt for always using the full path in the cron >> job. >> >> -Shawn > > see I don't use cron; I run small scripts from the command line that fork > then run forever on a while loop with a sleep.. so: > > worker.php > <?php > include '/path/to/maininclude.php'; > > $pid=pcntl_fork(); > if(!$pid) { > while(1) { > $work = new work_object; > if( $job = $work-getJobs->('thisjob') ) { > // i have something to do, and doing it here > } else { > sleep(10); > } > } > } else { > echo "\ndaemon launcher done id $pid\n"; > } > ?> > > or you can run say 10 versions at the same time for things where > multi-process helps (scrapers, whois checks etc) > > controller.php > <?php > include '/path/to/maininclude.php'; > > for($icount=0;$icount<11;$icount++) { > include './worker.php'; //spawn 10 workers > } > ?> > > just my preference :) > > -- > PHP General Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php > > Just out of curiosity, how's your worker keep track of jobs? -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php