975 B
go.grace
Package grace provides a library that makes it easy to build socket based servers that can be gracefully terminated & restarted (that is, without dropping any connections).
It provides a convenient API for HTTP servers, especially if you need to listen on multiple ports (for example a secondary internal only admin server). Additionally it is implemented using the same API as systemd providing socket activation compatibility to also provide lazy activation of the server.
Demo HTTP Server with graceful termination and restart: https://github.com/daaku/go.grace/blob/master/gracedemo/demo.go
http level graceful termination and restart: http://godoc.org/github.com/daaku/go.grace/gracehttp
net.Listener level graceful termination and restart: http://godoc.org/github.com/daaku/go.grace