cloudflare/pingora

Feature Request: Dynamic listener updates without SIGHUP restart

Opened this issue · 1 comments

Problem
Currently, any listener config change in Pingora requires SIGHUP + process restart, which kills long-lived connections (WebSocket, HTTP/2, keep-alive). This is painful for production services that need 24/7 uptime.
Why does Pingora need SIGHUP when Envoy doesn't?

Like Envoy can update listeners at runtime without dropping connections. Pingora should be able to do this too since it's also single-process multi-threaded.

Hot reloading listeners in the Envoy style seems doable but a larger endeavor. Tagging as feature request and enhancement for now.