-
Notifications
You must be signed in to change notification settings - Fork 143
Description
We have a legacy gunicorn version held back by a prior Python version. Review our options re updating this python wsgi server.
An additional aim, in line with our improved Python base, is to move from sync threading, to the more appropriate gthread gunicorn worker type.
See: https://docs.gunicorn.org/en/latest/settings.html#worker-class
And: https://docs.gunicorn.org/en/stable/design.html#choosing-a-worker-type
The default synchronous workers assume that your application is resource-bound in terms of CPU and network bandwidth. Generally this means that your application shouldn’t do anything that takes an undefined amount of time. An example of something that takes an undefined amount of time is a request to the internet.
https://docs.gunicorn.org/en/stable/design.html#gthread-workers
The worker gthread is a threaded worker. It accepts connections in the main loop. Accepted connections are added to the thread pool as a connection job. On keepalive connections are put back in the loop waiting for an event. If no event happens after the keepalive timeout, the connection is closed.