Forks and watches multiple instances of a program in the same context (environment + fds)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Stefan Bühler d3a960fbe0 distribute README.rst 6 years ago
.gitignore Initial commit 13 years ago
CMakeLists.txt fix ftbfs with ld --as-needed 10 years ago
COPYING Fix year in COPYING 13 years ago distribute README.rst 6 years ago
README.rst make README a proper formatted README.rst 8 years ago Initial commit 13 years ago
config.h.cmake Initial commit 13 years ago [build] Fix detection of libev (fixes #2307) 10 years ago
multiwatch.1 fix minus signs in man page 6 years ago
multiwatch.c Fix typos, s/childs/children/ and add new "--signal" option 11 years 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 .