Would like to implement WebSocket support
Alexandr Gomoliako
zzz at zzz.org.ua
Thu Feb 2 17:36:51 UTC 2012
On 2/2/12, André Caron <andre.l.caron at gmail.com> wrote:
> NGINX modules[2]. After initial reading, I understand that I need to write
> an Upstream (proxy) handler. Is this correct?
Not really.
> The HTTP proxy module has a scary note that says:
>
>> Note that when using the HTTP Proxy Module (or even when using FastCGI),
>> the entire client request will be buffered in nginx before being passed on to
>> the backend proxied servers.
>
> Is this a limitation cause by NGINX's architecture, or is this by design
> (e.g. for validation of body against headers, etc.)?
It just means that you can't use existing upstream modules and
upstream interface.
> The bigger problem, however, is that there is no standard interface to
> application servers for this new WebSocket protocol. There is some
> discussion[3] on an Apache enhancement request that basically proposes a
> modification of CGI. Since CGI has already been demonstrated to be a
> performance problem, I'm looking for an alternate solution, maybe something
> closer to SCGI? Anyone have suggestions?
I think what you need here is a simple protocol upgrade functionality
that switches to tcp proxying for particular connection once it
encounters upgrade in connection header. And everything else is up to
application server.
So you don't really need to parse websocket protocol in nginx unless
it is your application server.
More information about the nginx
mailing list