如果我使用带有Eventlet工作者类型的Gunicorn部署Django,并且只使用一个进程,那么在为1000(默认)工作者连接提供服务的情况下会发生什么? Django的哪些部分被复制到每个线程中?是否复制了任何部件?
答案 0 :(得分:3)
如果在gunicorn配置中设置workers = 1
,将创建两个进程:1个主进程和1个工作进程。
使用worker_class = eventlet
时,同时连接由绿色线程处理。绿色线程不像真正的线程。简单来说,只要函数遇到I / O操作,绿色线程就是yield
的函数(协同程序)。
所以什么都没复制。您只需要担心每个I / O操作都是“绿色”。