We did notice similar functionality with PHP FPM<br><br><a href="http://php.net/manual/en/install.fpm.php">http://php.net/manual/en/install.fpm.php</a><br><br><span class="function"><b>fastcgi_finish_request()</b></span> - special function to finish request and flush all data while 
       continuing to do something time-consuming (video converting, stats processing etc.);
      <br><br>Alternatively, and the approach we're using is via Gearman message bus style system.<br><br><div class="gmail_quote">On Wed, Aug 31, 2011 at 7:27 AM, Richard Kearsley <span dir="ltr"><<a href="mailto:Richard.Kearsley@m247.com">Richard.Kearsley@m247.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">





<div link="blue" vlink="purple" lang="EN-GB">
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">I don’t believe nginx can do this since I think it’stoo linear in the way it processes the request<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">The way I would approach this is by using the httpd built into C# - HttpListener<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">Once you receive the initial request you can send 200 immediately then spawn a new thread with the request to your backend using HttpWebRequest<u></u><u></u></span></p>


<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">Just some ideas… this is potentially very easy using C# - and I’m sure in quite a few other lanquages/scripts too<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"><u></u> <u></u></span></p>
<p class="MsoNormal"><b><span style="font-size:10.0pt" lang="EN-US">From:</span></b><span style="font-size:10.0pt" lang="EN-US"> <a href="mailto:nginx-bounces@nginx.org" target="_blank">nginx-bounces@nginx.org</a> [mailto:<a href="mailto:nginx-bounces@nginx.org" target="_blank">nginx-bounces@nginx.org</a>]
<b>On Behalf Of </b>Guy Knights<br>
<b>Sent:</b> 30 August 2011 22:35<br>
<b>To:</b> <a href="mailto:nginx@nginx.org" target="_blank">nginx@nginx.org</a><br>
<b>Subject:</b> Fire and forget requests<u></u><u></u></span></p><div><div></div><div class="h5">
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Hi,<br>
<br>
We have a very specific use case and are trying to find a solution for it. We started looking at nginx as a possibility for handling this use case as we already use nginx for some of our other webserver duties. I've done some testing and investigation but it
 doesn't seem like we can use nginx to do what we want. However I thought I'd check with the community before dismissing it completely.<br>
<br>
What we want is a fire and forget solution for request handling, where we can set up nginx to receive a request from our web servers, pass this request on to an external HTTP service or an HTTP backend and send a 200 response back straight away to the requesting
 machine, leaving the original request to be handled at whatever speed the backend is capable of. We don't care about the response from the backend server; this can simply be dropped once it's received.<br>
<br>
Is something like the above possible? I did some testing by setting nginx up as a load balancer, pointing at a backend web server, and using the "return" directive before the proxy_pass directive but the return directive simply stops further execution of the
 request.<br>
<br>
Any advice would be welcome.<br>
<br>
Thanks,<br>
Guy<u></u><u></u></p>
</div></div></div>
</div>

<br>_______________________________________________<br>
nginx mailing list<br>
<a href="mailto:nginx@nginx.org">nginx@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br>Bradley Falzon<br><a href="mailto:brad@teambrad.net" target="_blank">brad@teambrad.net</a><br>