FastCGI multiplexing?
Igor Clark
igor at pokelondon.com
Mon Jan 14 19:31:23 MSK 2008
On 14 Jan 2008, at 13:46, Manlio Perillo wrote:
> Igor Clark ha scritto:
>> Hi Igor and everyone,
>> I'm toying with some ideas for a multithreaded FastCGI application,
>> intended to work with nginx.
>> Seems that FCGI request/connection multiplexing would be an
>> extremely valuable feature.
>> I can't find any reference to this on the wiki, in the mailing list
>> or on Google - I assume this is because nginx, like Apache, doesn't
>> support FastCGI multiplexing. Is this correct? If so, are there any
>> plans to implement it at some point in the future?
>
> As far as I know the multiplexing support in FastCGI is broken "by
> design".
>
> Read this response one of the authors of Twisted gave me about
> FastCGI (among other questions):
> http://twistedmatrix.com/pipermail/twisted-web/2006-April/002598.html
Thanks Manlio, that's very interesting. Lack of flow control in the
protocol is obviously an issue for multiplexing; now that it's been
pointed out, it seems bizarre that it should have been missed out. One
wonders if the intention was for the application to send an HTTP 503
over the FCGI connection in the event of overloading? I guess this
would require a web server module to back off from overloaded
application instances based on their HTTP status code - which seems
like trying to patch up the shortcomings of the transport in the
application.
It's a shame; it seemed that removing all the TCP overhead between the
web server and the application server would be a good thing, but
perhaps FCGI just isn't the way. I'm still just researching the area
at the moment though so any further thoughts or experiences would be
very welcome.
Is there any plan to implement HTTP/1.1 & keepalive connections in
nginx's conversations with upstream servers? Can't see anything in the
wiki or feature request list.
Cheers,
Igor
--
Igor Clark // POKE // 10 Redchurch Street // E2 7DD // +44 (0)20 7749
5355 // www.pokelondon.com
More information about the nginx
mailing list