在接受下一个请求之前,gunicorn会等待生成的线程完成吗?

时间:2015-02-03 23:23:11

标签: django multithreading gunicorn

我有一个运行Django的Web服务器,使用同步工作的gunicorn(我的gunicorn配置是开箱即用的,没有gevent或任何东西)。

在一个枪支工人的过程中,显然有一个主线。我还写了一些自定义中间件来发送请求&回答Keen.io的数据,我是从芹菜工人那里得到的。但是,对芹菜工人入队的要求需要远程调用我的RabbitMQ排队服务,所以我在另一个线程中这样做,这样即使入队呼叫没有&#39,Django的http响应也会被发送到客户端。 ; t在呈现响应时完成。

如果你想知道我为什么要这样做,那么我只想说一下我在高规模系统上的经验,你将不可避免地看到排队的失败或极端延迟,或者真的有任何线上电话。我不希望这些延迟会影响我的响应时间。

我的问题是,在接受后续请求之前,是否会使用gunicorn WAIT来生成线程?或者那些产生的线程可能会堆积起来"?这对我来说很重要,因为我使用了一个数据库连接池,如果这些线程不断堆积,它会很快耗尽。

0 个答案:

没有答案