在Django中,如果视图在回答请求时使用sleep()函数,是否会阻止整个请求队列的处理?
如果是这样,如何在没有此阻止行为的情况下延迟http答案?我们可以开箱即用,避免使用像Celeri这样的工作队列吗?
答案 0 :(得分:2)
我认为在大多数情况下调用sleep()
应该阻止所有Django代码的执行。但是,它可能取决于部署架构(例如gevent,gunicorn等)。例如,如果您使用的服务器为每个请求触发Django线程,那么它不会阻止所有代码。
在大多数情况下,使用像Celeri这样的东西是一个更好的解决方案,因为(1)不重新发明轮子和(2)它已经过测试。