Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Go port of start_server utility (Server::Starter)

License

NotificationsYou must be signed in to change notification settings

lestrrat-go/server-starter

Repository files navigation

Go port ofstart_server utility (a.k.a.Server::Starter).

Build Status

GoDoc

DESCRIPTION

note: this description is almost entirely taken from the original Server::Starter module

Thestart_server utility is a superdaemon for hot-deploying 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:start_server 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 connections). The spawned server programs understart_server 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.

By usingstart_server it is much easier to write a hot-deployable server. Following are the only requirements a server program to be run understart_server should conform to:

  • receive file descriptors to listen to through an environment variable - perform a graceful shutdown when receiving SIGTERM

Many PSGI servers support this. If you want your Go program to support it, you can look under thelistener directory for an implementation that also fills thenet.Listener interface.

INSTALLATION

go get github.com/lestrrat-go/server-starter/cmd/start_server

About

Go port of start_server utility (Server::Starter)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors6


[8]ページ先頭

©2009-2025 Movatter.jp