It is sometimes useful to update the running code and/or configuration of a network service, without disrupting existing connections. Usually, this is achieved by starting a new process, somehow transferring clients to it, and then exiting the old process. There are many ways to implement graceful upgrades. They vary wildly in the trade-offs they make, and how much control they afford the user. No old code keeps running after a successful upgrade. The new process has a grace period for performing initialization. Crashing during initialization is OK. Only a single upgrade is ever run in parallel.

Features

  • tableflip works on Linux and macOS
  • No old code keeps running after a successful upgrade
  • The new process has a grace period for performing initialisation
  • Crashing during initialisation is OK
  • Only a single upgrade is ever run in parallel
  • Integration with systemd

Project Samples

Project Activity

See All Activity >

Categories

Frameworks

License

BSD License

Follow Graceful process restarts in Go

Graceful process restarts in Go Web Site

Other Useful Business Software
Earn up to 16% annual interest with Nexo. Icon
Earn up to 16% annual interest with Nexo.

More flexibility. More control.

Generate interest, access liquidity without selling, and execute trades seamlessly. All in one platform. Geographic restrictions, eligibility, and terms apply.
Get started with Nexo.
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Graceful process restarts in Go!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Programming Language

Go

Related Categories

Go Frameworks

Registered

2023-01-20