START_SERVER(1)

NAME
start_server - a superdaemon for hot-deploying server programs

SYNOPSIS
  start_server [options] -- server-prog server-arg1 server-arg2 ...

  # start Plack using Starlet listening at TCP port 8000
  start_server --port=8000 -- plackup -s Starlet --max-workers=100 index.psgi

DESCRIPTION
This script is a frontend of Server::Starter. For more information please refer to the documentation of the module.

OPTIONS

  --port=(port|host:port)
TCP port to listen to (if omitted, will not bind to any ports)

  --path=path
path at where to listen using unix socket (optional)

  --dir=path
working directory, start_server do chdir to before exec (optional)

  --interval=seconds
minimum interval to respawn the server program (default: 1)

  --signal-on-hup=SIGNAL
name of the signal to be sent to the server process when start_server receives a SIGHUP (default: SIGTERM). If you use this option, be sure to also use "--signal-on-term" below.

  --signal-on-term=SIGNAL
name of the signal to be sent to the server process when start_server receives a SIGTERM (default: SIGTERM)

  --pid-file=filename
if set, writes the process id of the start_server process to the file

  --status-file=filename
if set, writes the status of the server process(es) to the file

  --envdir=ENVDIR
directory that contains environment variables to the server processes. It is intended for use with "envdir" in "daemontools". This can be overwritten by environment variable "ENVDIR".

  --enable-auto-restart
enables automatic restart by time. This can be overwritten by environment variable "ENABLE_AUTO_RESTART".

  --auto-restart-interval=seconds
automatic restart interval (default 360). It is used with "--enable-auto-restart" option. This can be overwritten by environment variable "AUTO_RESTART_INTERVAL".

  --kill-old-delay=seconds
time to suspend to send a signal to the old worker. The default value is 5 when "--enable-auto-restart" is set, 0 otherwise. This can be overwritten by environment variable "KILL_OLD_DELAY".

  --restart
this is a wrapper command that reads the pid of the start_server process from --pid-file, sends SIGHUP to the process and waits until the server(s) of the older generation(s) die by monitoring the contents of the --status-file

  --backlog specifies a listen backlog parameter, whose default is SOMAXCONN (usually 128 on Linux). While SOMAXCONN is enough for most loads, large backlog is required for heavy loads.

  --help
prints this help

  --version
prints the version number

AUTHOR
Kazuho Oku

SEE ALSO
Server::Starter

LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.