问题描述:

If I deploy Django using Gunicorn with the Eventlet worker type, and only use one process, what happens under the hood to service the 1000 (by default) worker connections? What parts of Django are copied into each thread? Are any parts copied?

网友答案:

If you set workers = 1 in your gunicorn configuration, two processes will be created: 1 master process and 1 worker process.

When you use worker_class = eventlet, the simultaneous connections are handled by green threads. Green threads are not like real threads. In simple terms, green threads are functions (coroutines) that yield whenever the function encounters I/O operation.

So nothing is copied. You just need to worry about making every I/O operation 'green'.

相关阅读:
Top