start_server

superdaemon for hot-deploying Perl server programs

Install

All systems
curl cmd.cat/start_server.sh
Debian Debian
apt-get install libserver-starter-perl
Ubuntu
apt-get install libserver-starter-perl
image/svg+xml Kali Linux
apt-get install libserver-starter-perl
Fedora
dnf install perl-Server-Starter-start_server
Windows (WSL2)
sudo apt-get update sudo apt-get install libserver-starter-perl
Raspbian
apt-get install libserver-starter-perl

libserver-starter-perl

superdaemon for hot-deploying Perl server programs

It is often a pain to write a server program that supports graceful restarts, with no resource leaks. Server::Starter solves the problem by splitting the task into two. One is start_server, a script provided as a part of the module, which works as a superdaemon that binds to zero or more TCP ports or unix sockets, and repeatedly spawns the server program that actually handles the necessary tasks (for example, responding to incoming commenctions). The spawned server programs under Server::Starter call accept(2) and handle the requests. To gracefully restart the server program, send SIGHUP to the superdaemon. The superdaemon spawns a new server program, and if (and only if) it starts up successfully, sends SIGTERM to the old server program.

perl-Server-Starter-start_server

start_server script