I don't want to use an external library, and I'm looking for the simplest release procedure possible. Do you guys have any suggestions?
Right now I'm using kill in a loop in bash, sleeping a second after every attempt, until the server is down. After that I replace the binaries and try to start my new server. This often works, but sometimes it doesn't. Could it be that the port is still hogged by the old process?
Is Echo using "SO_REUSEADDR"/"SO_REUSEPORT" on a lower level in Linux, or how does it work?
Edit: This could be an inspiration/of interest: https://github.com/libp2p/go-reuseport
I don't want to use an external library, and I'm looking for the simplest release procedure possible. Do you guys have any suggestions?
Right now I'm using kill in a loop in bash, sleeping a second after every attempt, until the server is down. After that I replace the binaries and try to start my new server. This often works, but sometimes it doesn't. Could it be that the port is still hogged by the old process?
Is Echo using "SO_REUSEADDR"/"SO_REUSEPORT" on a lower level in Linux, or how does it work?
Edit: This could be an inspiration/of interest: https://github.com/libp2p/go-reuseport