Antony - thank you so much! This is quite a surprise though, I didn't
know there were plans for this... I was talking to gwynne on IRC about
the best way to get this going.

I suppose it being a separate SAPI works, but I had also thought:

"What if it was just a modification to the FCGI SAPI, and the FPM
management features, config file parsing, all that were in a
standalone daemon. That allows for a lot of changes and such to be
done in the daemon portion without having to align it with PHP
releases"

I don't think a lot has to be done really to the internals once the
portions you've listed before were adopted. Only a few IPC, socket or
command line options to start/stop from an external daemon would need
to be involved, and communication to allow for adaptive process
spawning...

We've been wanting to change the configuration file syntax already and
the majority of "wishlist" items we've wanted to add mainly fall under
the manager daemon... I am just scared that it may take a while for
those to be released if it has to fall under PHP's release cycle (not
to mention do other SAPIs have their own configuration files and such?
Seems like an awful lot of 'special needs' is now bundled in to a SAPI
inside of PHP core)

Either way though - this is a win. I was unaware this was even
happening. We've been having discussions on the php-fpm mailing list
about this and a little bit of internal battling on it too (mainly
100% php core vs. only the portions needed in php core, etc.)

This is awesome though. Hopefully we can get things moving faster. If
anyone is interested in the ideas we have to make things easier to use
and enhance some functionality *please* don't hesitate to email me off
list. I have a feeling the majority of items aren't actually that
difficult.


On Fri, Dec 4, 2009 at 4:53 AM, Antony Dovgal <t...@daylessday.org> wrote:
> Hello all.
>
> I'm glad to announce that we now have FPM SAPI available for testing in a 
> separate SVN branch.
>
> You can check out its sources using the following command:
> svn co http://svn.php.net/repository/php/php-src/branches/PHP_5_3_FPM 
> php_5_3_fpm
>
> Building FPM is as easy as `./configure --enable-fpm && make install`.
> After that you need to adjust the default config file (installed into 
> $prefix/etc)
> and run `php-fpm`.
>
>
> For those who don't know what FPM is: FPM (FastCGI Process Manager) is an 
> alternative
> PHP FastCGI implementation with some additional features useful for 
> heavy-loaded sites.
> These features include:
> - advanced process management with graceful stop/start;
> - ability to start workers with different uid/gid/chroot/environment and 
> different php.ini (replaces safe_mode);
> - stdout & stderr logging;
> - emergency restart in case of accidental opcode cache destruction;
> - accelerated upload support;
> - "slowlog";
> - fastcgi_finish_request() - special function to finish request & flush all 
> data while
> continuing to do something time-consuming (video converting, stats processing 
> etc.);
> and some more.
>
> You are welcome to test the code and report any issues to me (since it's not 
> fully official,
> we don't have a category @ bugs.php.net yet).
>
> --
> Wbr,
> Antony Dovgal
> ---
> http://pinba.org - realtime statistics for PHP
>
> --
> PHP Internals - PHP Runtime Development Mailing List
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to