falcon icon indicating copy to clipboard operation
falcon copied to clipboard

Equivalent to "pumactl restart"

Open elondres-mim opened this issue 10 months ago • 1 comments

Puma has a command which re-execs the parent process without closing the listen sockets, allowing for hot reloading of code without introducing downtime.

The closest thing it seems Falcon has is the sighup handler, which doesn't reload preloaded code, so there's a tradeoff between better performance and resource usage or the ability for hot code reloading. It would be really nice if falcon would support both!

elondres-mim avatar Apr 18 '25 15:04 elondres-mim

falcon virtual is a load balancer and can allow you to do blue/green deploys without dropping the connected sockets.

It's not exactly what you want as it works using a 3 process hierarchy:

  • Falcon Virtual (Load Balancer)
  • Falcon Host
  • Falcon Server

The load balancer is responsible for binding the connection, and is able to restart Falcon Host processes which are responsible for the actual server (preloads etc).

It's a bit risky to do what you suggest, as if the updated process fails in any way, there is no option to go back. In the case of blue/green deploys, in principle you keep the old servers around until the new ones are fully operational.

ioquatix avatar Apr 27 '25 09:04 ioquatix