Zero downtime API in Golang

  1. We can take an advantage of socket options namely SO_REUSEPORT. In Golang we can set options to our listener (as can be seen in the following code example), with these options we can start multiple web servers that use the same port.
  2. When we start a new process in Golang, you can specify file descriptors that can be inherited. We can share our opened socket with our child so our child can start where we left off.




System Engineer & Master student of Distribured systems

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Dell PE PERC H700 512MB SAS RAID Controller — XXFVX


How to get started yield farming in 1 min?

“Build a Web Crawler with Bypassing Anti-Crawler Technology Using Python.”

Hands holding a cell phone and notebook.

Stop Gaslighting Me With Scrum

A group of Rugby players in a scrum

Basic Introduction to Pandas( Python Data Analysis Library)


Deploy Angular/Java Sprinboot App to an AWS Amazon EC2 Instance, with RDS.

Scaling productivity on microservices at Lyft (Part 1)

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Daniel Sedlak

Daniel Sedlak

System Engineer & Master student of Distribured systems

More from Medium

Go (Golang): Clean Architecture & Repositories vs Transactions

Golang URL Shortener

When to Use Generics in Go?

How to Speed Up Your Struct in Golang