Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Possible zero downtime supervisor reloads #2396

Closed
ankush opened this issue Dec 31, 2024 · 1 comment
Closed

Possible zero downtime supervisor reloads #2396

ankush opened this issue Dec 31, 2024 · 1 comment

Comments

@ankush
Copy link
Member

ankush commented Dec 31, 2024

We use --preload so it's not really possible to reload code in running servers.

BUT gunicorn supports --reuse-port which means there can be two gunicorn instances listening on same kernel socket. So theoretically we can do:

  1. Update code (or not, it can just be a routine restart for scaling workers)
  2. Start a new gunicorn version on same port.
  3. Once step 2 completes, send terminate signal to original one.

This is possibly complex to do with supervisord limitations.

@ankush
Copy link
Member Author

ankush commented Jan 17, 2025

Eh, over engineering. But maybe someday when we aren't using supervisord

@ankush ankush closed this as not planned Won't fix, can't repro, duplicate, stale Jan 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant