einhyrningsins(1) -- graceful restarts for socket-based daemons =============================================================== ## SYNOPSIS `einhyrningsins` [OPTIONS] -- PROGRAM [PROGRAM_ARGS] ## DESCRIPTION This is a socket multiplexer featuring graceful restarts. It runs multiple copies of the child program that are passed a shared socket (or more than one) to bind to and accept connections from. Graceful rolling restarts enable updates of the child program with zero downtime and no dropped connections. This program requires special support in the child program to achive the graceful restarts and bind to inherited file descriptors indicated by environment variables. einhyrningsins(1) is a partially-comparible re-implementation of einhorn(1) (a Ruby program) in Rust. Einhorn itself derived from Unicorn. * `-n`, `--number`=COUNT How many child processes to spawn. * `-b`, `--bind` ADDR Socket(s) to bind to. This argument can be repeated. * `-4`, `--ipv4-only`: Only accept IPv4 connections * `-6`, `--ipv6-only` Only accept IPv6 connections * `-h`, `--help` Print a help menu * `--version` Print program version * `-v`, `--verbose` More verbose logging and output ## STATUS This is a fun fun hobby project. Still in progress, and notably untested. ## COPYRIGHT Copyright 2016 Bryan Newbold License GPLv3+: GNU GPL version 3 or later . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. ## SEE ALSO `einhorn (1)`, `einhyrningsinsctl(1)`