about summary refs log tree commit homepage
path: root/SIGNALS
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2009-03-09 15:29:59 -0700
committerEric Wong <normalperson@yhbt.net>2009-03-09 16:12:22 -0700
commit32a5a5e91bd78795f546e2a8b8b775f1e1989ed9 (patch)
treee7e2efc0bad50405cf330a6b1c8d524113fa3a2f /SIGNALS
parentbfc3aae9b85b520c87539fdf203587c3a1c9453f (diff)
downloadunicorn-32a5a5e91bd78795f546e2a8b8b775f1e1989ed9.tar.gz
Reformat README to avoid preformatted text.
Document signal handling in SIGNALS.
Split out DESIGN, it's probably not as useful to end-users
Update CONTRIBUTORS
LICENSE: copyright is for me (Eric Wong), not Zed since this
is a Mongrel fork.
Diffstat (limited to 'SIGNALS')
-rw-r--r--SIGNALS34
1 files changed, 34 insertions, 0 deletions
diff --git a/SIGNALS b/SIGNALS
new file mode 100644
index 0000000..40f9c3d
--- /dev/null
+++ b/SIGNALS
@@ -0,0 +1,34 @@
+== Signal handling
+
+In general, signals need only be sent to the master process.  However,
+the signals unicorn uses internally to communicate with the worker
+processes are documented here as well.
+
+=== Master Process
+
+ * HUP - reload config file and gracefully restart all workers
+
+ * INT/TERM - quick shutdown, kills all workers immediately
+
+ * QUIT - graceful shutdown, waits for workers to finish their
+   current request before finishing.
+
+ * USR1 - reopen all logs owned by the master and all workers
+   See Unicorn::Util.reopen_logs for what is considered a log.
+
+ * USR2 - reexecute the running binary.  A separate QUIT
+   should be sent to the original process once the child is verified to
+   be up and running.
+
+=== Worker Processes
+
+Sending signals directly to the worker processes should not normally be
+needed.  If the master process is running, any exited worker will be
+automatically respawned.
+
+ * INT/TERM - quick shutdown, immediately exit
+
+ * QUIT - gracefully exit after finishing the current request
+
+ * USR1 - reopen all logs owned by the worker process
+   See Unicorn::Util.reopen_logs for what is considered a log.