在gunicorn中为不同的端点配置不同的超时?

Ben*_*son 9 python rest session-timeout gunicorn

Gunicorn允许为请求配置超时,如下面的文档中所示.这似乎是整个应用程序的全局配置.

是否可以为不同的端点配置不同的超时?也许覆盖已知需要很长时间的url端点上的默认超时?

http://docs.gunicorn.org/en/stable/settings.html#timeout

超时

-t INT, - timeout INT

三十

沉默超过这么多秒钟的工人被杀死并重新开始.

一般设定为30秒.如果您确定同步工作人员的影响,请将其设置得明显更高.对于非同步工作者,它只意味着工作进程仍在进行通信,并且与处理单个请求所需的时间长度无关.

小智 2

没有简单的方法可以做你想做的事。也许最好的选择是将每个端点打包到一个单独的应用程序中,然后使用它们自己单独的gunicorn进程/工作人员启动它们并具有适当的超时。然后放置像 nginx 这样的东西来将端点代理到不同的gunicorn进程。