On Sat, Oct 31, 2009 at 3:36 PM, Rob Schultz <rschultz7@gmail.com> wrote:
> Just have your php script do the auth and have it send the X-Accel-Redirect
> header and nginx will serve the file.
>
Well, the sad part of this approach is that if the
PHP/Python/Perl/whatever script requires TCP I/O itself (no matter
it's memcached or an RDBMS or upstream web service queries), it will
block the process running the script (although the nginx worker
process itself won't block if fastcgi is used here).
So we're pondering extending the idea of X-Accel-Redirect and makes it
possible to pass along "continuations" so that the backend script can
effectively issue nginx subrequests and let nginx do all the I/O
operations involved in its own event model. It's very likely to get
*better* concurrency over all :)
Cheers,
-agentzh