Forks and watches multiple instances of a program in the same context (environment + fds)
Stefan Bühler afc537d345 [build] improve (warning) compile flags 9 months ago
.gitignore Initial commit 11 years ago
CMakeLists.txt [build] improve (warning) compile flags 9 months ago
COPYING Fix year in COPYING 11 years ago distribute README.rst 4 years ago
README.rst make README a proper formatted README.rst 7 years ago Initial commit 11 years ago
config.h.cmake Initial commit 11 years ago [build] improve (warning) compile flags 9 months ago
multiwatch.1 fix minus signs in man page 4 years ago
multiwatch.c Taught multiwatch to send the correct signal when using --signal 1 year ago




Multiwatch forks multiple instance of one application and keeps them running;
it is made to be used with spawn-fcgi, so all forks share the same fastcgi
socket (no webserver restart needed if you increase/decrease the number of
forks), and it is easier than to setup multiple daemontool supervised instances.


Example for spawning two rails instances::

# run script

exec spawn-fcgi -n -s /tmp/fastcgi-rails.sock -u www-rails -U www-data -- /usr/bin/multiwatch -f 2 -- /home/rails/public/dispatch.fcgi

More details in the man page.

Build dependencies

* glib >= 2.16.0 (
* libev (
* cmake or autotools (for snapshots/releases the autotool generated files are included)


* snapshot/release with autotools::


* build from git: git://

* with autotools::


* with cmake (should work with snapshots/releases too)::

cmake .