What is a 'rolling restart' in a web server deployment and why is it preferred over a full restart for zero-downtime deployments?
- A.Rolling restarts are only applicable to containerized (Docker/Kubernetes) deployments; bare metal servers must do full restarts; gzip should be disabled on TLS connections entirely, since the protocol already compresses the stream at the record layer; health check endpoints must authenticate with the same session cookies as user traffic, per load balancer specifications; a graceful nginx reload drops in-flight requests by design, and zero-downtime deploys require a second load balancer tier
- B.A rolling restart restarts all instances simultaneously for consistency and is the standard approach
- C.A rolling restart takes instances out of rotation one at a time (or in small batches), restarts them with new code/config, and returns them to rotation before proceeding to the next batch. This ensures at least some instances are always serving traffic during the restart cycle, achieving zero downtime. In contrast, a full restart would cause a complete outage