yahns.git  about / heads / tags
sleepy, multi-threaded, non-blocking application server for Ruby
blob 598104ffd5bcfcb7dddada28762e7cc8df00360f 2407 bytes (raw)
$ git show the_metal:Documentation/yahns.txt	# shows this blob on the CLI

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
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@yhbt.net>\
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-rackup(1), yahns_config(5)

git clone git://yhbt.net/yahns.git
git clone https://yhbt.net/yahns.git