Go has been designed as a backend language and is mostly used as such. Servers are the most common type of software produced with it. The question I’m going to answer here is: how to cleanly upgrade a running server? Goals: Do not close any of the existing connections: for instance, we don’t want to cut down any running deployment. However we want to be able to upgrade our services whenever we wan
![Graceful server restart with Go](https://cdn-ak-scissors.b.st-hatena.com/image/square/a3c45ad2cd63f22f28ceb4c4c6c29a23b508a7b0/height=288;version=1;width=512/https%3A%2F%2Fwww.datocms-assets.com%2F36416%2F1605374507-banner-bcf083ef5e1f7808a8f894074a77d142.jpg%3Fauto%3Dformat%26fit%3Dmax%26w%3D1200)