Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:46283 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 95447 invoked from network); 5 Dec 2009 00:26:02 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 5 Dec 2009 00:26:02 -0000 Authentication-Results: pb1.pair.com smtp.mail=mike503@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=mike503@gmail.com; sender-id=pass; domainkeys=bad Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.222.176 as permitted sender) DomainKey-Status: bad X-DomainKeys: Ecelerity dk_validate implementing draft-delany-domainkeys-base-01 X-PHP-List-Original-Sender: mike503@gmail.com X-Host-Fingerprint: 209.85.222.176 mail-pz0-f176.google.com Received: from [209.85.222.176] ([209.85.222.176:33155] helo=mail-pz0-f176.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id C0/E5-55077-898A91B4 for ; Fri, 04 Dec 2009 19:26:01 -0500 Received: by pzk6 with SMTP id 6so2760269pzk.29 for ; Fri, 04 Dec 2009 16:25:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type; bh=TDS7KUX1P2kWaOwwZ+E5SE54xqORfRg3eu1gUgAWBOg=; b=l8DA7Cv0uGWxEBOQXLW7R4ytsNK5py89NanK5Z1P2uqzSnXSHZkIQufKrXkGX9MlIr mSfygovdmyAcAF9QJkKVsCEzCnlmT54qz3Oxxxoq/XM+CJhmgoTi6hQQ8Bbh08yPaA6s JN2AXyxSDDWDKgMADq6B9Xw5O6kmddI2BW2PE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=RRYb+hXvWqhCitki1dBJK9oAnEPWyo8zEniUYK0pICLX+KBhzE7YejK2MPb04FED/2 FBow5K1BhoJTsnBojLEjQuPo0x1jneVmYlDTNbNWKf6sGXuSQ4vlPYp4i9Hvin9W0By9 dG6DwJYtE67Oq8jPwtmxe6WJwuY5hFpJlUAr4= MIME-Version: 1.0 Received: by 10.114.248.20 with SMTP id v20mr5016250wah.132.1259972758079; Fri, 04 Dec 2009 16:25:58 -0800 (PST) In-Reply-To: <4B190660.2050107@daylessday.org> References: <4B190660.2050107@daylessday.org> Date: Fri, 4 Dec 2009 16:25:58 -0800 Message-ID: To: Antony Dovgal Cc: php-dev Content-Type: text/plain; charset=UTF-8 Subject: Re: [PHP-DEV] FPM is available in a separate SVN branch From: mike503@gmail.com (Michael Shadle) 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 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 > >