about summary refs log tree commit homepage
path: root/Documentation/yahns.txt
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2013-10-28 23:22:09 +0000
committerEric Wong <e@80x24.org>2013-10-29 02:37:05 +0000
commit695590c0cef47a13886a8232032fbe83e448f7a3 (patch)
treea8275d1a9885292c6de6038a055369a91799b5c3 /Documentation/yahns.txt
parent31f4772a7885a1a428eb411acd2d740c2f838c9a (diff)
downloadyahns-695590c0cef47a13886a8232032fbe83e448f7a3.tar.gz
This should hopefully make yahns more appealing and easier-to-use.
Diffstat (limited to 'Documentation/yahns.txt')
-rw-r--r--Documentation/yahns.txt68
1 files changed, 68 insertions, 0 deletions
diff --git a/Documentation/yahns.txt b/Documentation/yahns.txt
new file mode 100644
index 0000000..0725f49
--- /dev/null
+++ b/Documentation/yahns.txt
@@ -0,0 +1,68 @@
+% yahns(1) yahns user manual
+%
+
+# NAME
+
+yahns - multi-threaded, non-blocking application server for Ruby
+
+# SYNOPSYS
+
+yahns -c CONFIG_FILE [-D|--daemonize]
+
+# DESCRIPTION
+
+yahns(1) is the primary interface for launching a yahns application
+server.  The configuration file is documented in yahns_config(5).  yahns
+hosts Rack HTTP applications, but may support others in the future such
+as DRb.
+
+# SIGNALS
+
+The following UNIX signals may be sent to the running yahns process.
+If yahns is configured for worker_processes (optional), signals should
+only be sent to the master process.
+
+* INT/TERM/QUIT - graceful shutdown.  If repeated (any of these signals
+  is sent twice), shutdown occurs immediately.
+* USR1 - reopen all logs owned by the master and all workers.
+  This scans the Ruby ObjectSpace for all open File objects with the O_APPEND
+  file flag and buffering disabled (IO#sync==false)
+* USR2 - reexecute the running binary.  A separate QUIT should be sent to
+* HUP - if worker_processes are not used, this will reexecute the running
+  binary and gracefully exit the running process.  If worker_processes are
+  used, this will reload config file, app, and gracefully restart all workers
+* WINCH - gracefully stops workers but keep the master running.
+  This will only work for daemonized processes and only if the
+  worker_processes configuration directive is used.
+* TTIN - increment the number of worker processes by one
+  (only if the worker_processes directive is used)
+* TTOU - decrement the number of worker processes by one
+  (only if the worker_processes directive is used)
+
+# ENVIRONMENT
+
+yahns(1) itself requires no special environment variables.  However,
+environment variables such as RACK_ENV and RAILS_ENV can affect Rack and
+Rails applications it hosts.  Ruby and C library implementation-specific
+environment variables will also affect it.
+
+yahns will update the PWD (current working directory) env if the
+working_directory directive is set (see yahns_config(5)).
+
+# FILES
+
+See yahns_config(5) for documentation on the configuration file format.
+
+# CONTACT
+
+All feedback welcome via plain-text mail to <yahns-public@rubyforge.org>\
+No subscription is necessary to post to the mailing list.
+
+# COPYRIGHT
+
+Copyright 2013, Eric Wong <normalperson@yhbt.net> and all contributors.\
+License: GPLv3 or later <http://www.gnu.org/licenses/gpl-3.0.txt>
+
+# SEE ALSO
+
+yahns_config(5)