Asynchronous/multiplexing FastCGI for nginx (incl. ref serverimplementation)
Aleksander
jjjx128 на mail.ru
Ср Июн 30 23:37:50 MSD 2010
Wed, 30 Jun 2010 22:11:03 +0300 письмо от "maxhl" <maxhl at hitline.net.ua>:
> Primarily a modified version of the Nginx FastCGI module which implements
> multiplexing of connections, allowing a single FastCGI server to handle many
> concurrent requests.
> This paves the way for long-lived connections in web apps without wasting
> resources -- i.e. optimally you only need to run one server process per CPU
> (or one server with one thread per CPU) instead of one process per request.
Вообще, если один FCGI процесс находится внутри цикла и пришло новое
соединение, то оно просто становится в очередь, пока не будет принято
accept()'ом. Т.е. тот же самый multiplexing, но системой и нужно абсолютно
точно также по одному процессу на CPU, если нет ввода-вывода, о чем автор
забыл сообщить.
Преимущество может быть только одно, отсутствие оверхеда на установку соединения.
Но это обычно сильно меньше, чем время обработки запроса.
А из недостатков -- риск свежих багов.
Подробная информация о списке рассылки nginx-ru