Your company here, and a link to your site. Click to find out more.

multiwatch - Man Page

forks and watches multiple instances of a program in the same environment


multiwatch [options] -- <application> [app arguments]

multiwatch -v

multiwatch --help | -?


multiwatch is used to fork and watch multiple FastCGI backends.


-f,  --forks=children

Number of children to fork and watch (default 1)

-r,  --retry=retries

Number of retries to fork a single child (default 3)

-t,  --timeout=msecs

Retry timeout in ms; if the child dies after the timeout the retry counter is reset (default 10000 ms = 10 s)

-s,  --signal=signame

Signal to send to children to signal 'graceful' termination (HUP,INT,QUIT,TERM,USR1,USR2, default is USR1)

-?,  --help

General usage instructions

-v,  --version

Show version and exit

Signal Handling

multiwatch will forward the signal USR2; if it receives HUP,INT,QUIT,TERM or USR1, it will send the signal from --signal to the children; if it receives another signal from that group, it will forward the signal again.

A signal of the group HUP,INT,QUIT,TERM and USR1 tells multiwatch to go into "shutdown" mode, so it won't restart children after receiving it.


Spawn 2 rails instances on the same FastCGI socket (and supervise them):

spawn-fcgi -s /tmp/fastcgi-rails.sock -n -- /usr/bin/multiwatch -f 2 /home/rails/public/dispatch.fcgi

See Also



Stefan Buehler <stbuehler@web.de>.


September 17, 2010