5

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

如果是这样,如何在没有这种阻塞行为的情况下延迟 http 应答?我们能否做到开箱即用并避免使用像 Celeri 这样的作业队列?

4

1 回答 1

2

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

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

于 2012-10-22T18:38:26.830 回答