Skip to content

Comment on Graceful server restart with Go

Comments

Here's the library that implements this pattern:

https://github.com/gwatts/manners

And Mailgun's fork that supports passing file descriptors between processes:

https://github.com/mailgun/manners

Hi alexk, post author here,

The 'manners' package only enables graceful shutdown in a HTTP server, there is still work to be done to restart it gracefully, that's what I'm trying to show in the article.

Great article btw!

That's why I've added missing methods here:

https://github.com/mailgun/manners

Getting files from listener:

https://github.com/mailgun/manners/blob/master/listener.go#L...

Starting server with external listener:

https://github.com/mailgun/manners/blob/master/server.go#L87

It's used to restart Vulcand without downtime:

https://github.com/mailgun/vulcand/blob/master/service/servi...

Let's collaborate on this as a library if you are interested

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.