Kingsfordweg 151, 1043GR Amsterdam, The Netherlands ● 24/7 support — support@novogara.com
Knowledge base

Reloading without dropping requests

A restart does not have to mean a blip. Done right, a service picks up new config or new code while in-flight requests finish cleanly.

Reload beats restart

Most servers distinguish a reload from a restart. A reload re-reads configuration and spins up new workers while the old ones finish what they are doing, so no connection is cut. nginx and well-behaved app servers do this on a signal; reach for a full restart only when you truly must.

Draining behind a balancer

When you do need to replace a process or a whole machine, take it out of the load balancer first, let it finish its open requests, then stop it. The balancer stops sending new work while the old work drains. This is the mechanism underneath blue-green deploys.

Let systemd help

Model the service as a proper systemd unit with a sensible stop timeout and, where supported, socket activation so the listening socket survives the swap. The result is that deploys and config changes stop showing up as errors in anyone's graphs.


Still stuck? Mail support@novogara.com — an engineer answers, at any hour. Back to the knowledge base