sleep()是否阻止Django中的请求处理?

时间:2012-10-22 18:24:56

标签: python django

在Django中,如果视图在回答请求时使用sleep()函数,是否会阻止整个请求队列的处理?

如果是这样,如何在没有此阻止行为的情况下延迟http答案?我们可以开箱即用,避免使用像Celeri这样的工作队列吗?

1 个答案:

答案 0 :(得分:2)

我认为在大多数情况下调用sleep()应该阻止所有Django代码的执行。但是,它可能取决于部署架构(例如gevent,gunicorn等)。例如,如果您使用的服务器为每个请求触发Django线程,那么它不会阻止所有代码。

在大多数情况下,使用像Celeri这样的东西是一个更好的解决方案,因为(1)不重新发明轮子和(2)它已经过测试。