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

Consider using NGINX + Supervisor in place of Uvicorn process manager #1298

Closed
deliahu opened this issue Aug 25, 2020 · 0 comments · Fixed by #1526
Closed

Consider using NGINX + Supervisor in place of Uvicorn process manager #1298

deliahu opened this issue Aug 25, 2020 · 0 comments · Fixed by #1526
Labels
enhancement New feature or request
Milestone

Comments

@deliahu
Copy link
Member

deliahu commented Aug 25, 2020

Description

Motivation

NGINX is better suited for this task. For example, it can route to the process with the fewest active requests (Uvicorn does random assignment which leads to imbalance). It can also enforce max concurrency.

It would also make it easier to switch the app server if necessary (e.g. to aiohttp).

Would resolve #839

Open questions

  • Can NGNIX track in-flight requests? (here is some info from DataDog). But this might not be desired, since it probably makes most sense for a request to be considered "in-flight" (for autoscaling purposes) when the post_predict() is running, even if the response has already been set.

Notes

@deliahu deliahu added the enhancement New feature or request label Aug 25, 2020
@deliahu deliahu closed this as completed Nov 25, 2020
@deliahu deliahu added the v0.22 label Nov 26, 2020
@deliahu deliahu added this to the v0.22 milestone Nov 26, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant