具有阻塞调用的Nginx + FastCGI

时间:2015-06-11 20:42:35

标签: python nginx fastcgi

引用Nginx的主要优点是它不需要为它收到的每个请求生成单独的线程。

现在,如果我们使用FastCGI运行基于python的Web应用程序,并且此Web应用程序具有阻塞调用,是否会造成瓶颈?

由于只有有限数量的工作程序在运行(每个处理器1个?),python脚本的阻塞调用是否会使其协同进行多处理?

1 个答案:

答案 0 :(得分:0)

Nginx通过套接字连接讨论fastcgi进程。

如果fastcgi进程阻塞,则意味着它不会通过套接字发送数据。

这不会阻止nginx,因为它会继续处理事件(来自其他连接的数据)。它使用非阻塞技术,如selectpoll或等效的操作系统相关函数(具有超时)来查询套接字而不会阻塞。

但它会阻止任何客户端等待fastcgi输出。