FCGI.pm ?

Roger Hoover roger.hoover at gmail.com
Wed Mar 4 07:09:12 MSK 2009


Without having used daemontools or upstart myself, I think those tools are
intended to manage machine-level services and don't support pools of
identical processes nor FastCGI spawning.  Supervisord is more geared toward
running application daemons which may have a different lifecycle.  If you
have different groups of related processes in your application, you can
easily run each group under it's own instance of supervisord.  If you run
FCGI processes in multiple languages, you don't need a separate process
manager for each language. If you run different kinds of deamons (like FCGI,
STOMP, or AMQP), you don't need a separate process manager for each type of
daemon.  Unlike spawn-fcgi (which is not really a process manager),
supervisord allows a pool of processes to share a single FCGI socket.

mod_fastcgi for Apache is both an FastCGI dispatcher and a process manager.
When people switch to nginx, they often struggle with how to manage their
processes and if they're not using php-fpm, they often turn to spawn-fcgi,
which is very much lacking.  As it stands, supervisord can fill the gap
perfectly for mod_fastcgi's process manager for statically configured
processes.

For dynamically spawned processes, if someone were willing to write an nginx
module to call supervisord's XML-RPC api, we'd have a complete,
language-agnostic replacement solution for mod_fastcgi.

On Tue, Mar 3, 2009 at 6:10 PM, mike <mike503 at gmail.com> wrote:

> On Tue, Mar 3, 2009 at 1:45 PM, Roger Hoover <roger.hoover at gmail.com>
> wrote:
> > Supervisord can do all this and more.  It's a full service process
> manager
> > that can manage daemons in any language, including pools of FastCGI
> > processes.
> >
> > http://supervisord.org/
>
> Isn't this somewhat like daemontools, or upstart? (Just with a few
> more bells and whistles?)
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx/attachments/20090303/a72bc1c4/attachment.html>


More information about the nginx mailing list