Welcome! Log In Create A New Profile

Advanced

Re: Fire and forget requests

Bradley Falzon
August 30, 2011 08:26PM
We did notice similar functionality with PHP FPM

http://php.net/manual/en/install.fpm.php

*fastcgi_finish_request()* - special function to finish request and flush
all data while continuing to do something time-consuming (video converting,
stats processing etc.);

Alternatively, and the approach we're using is via Gearman message bus style
system.

On Wed, Aug 31, 2011 at 7:27 AM, Richard Kearsley <Richard.Kearsley@m247.com
> wrote:

> I don’t believe nginx can do this since I think it’stoo linear in the way
> it processes the request****
>
> The way I would approach this is by using the httpd built into C# -
> HttpListener****
>
> Once you receive the initial request you can send 200 immediately then
> spawn a new thread with the request to your backend using HttpWebRequest**
> **
>
> Just some ideas… this is potentially very easy using C# - and I’m sure in
> quite a few other lanquages/scripts too****
>
> ** **
>
> *From:* nginx-bounces@nginx.org [mailto:nginx-bounces@nginx.org] *On
> Behalf Of *Guy Knights
> *Sent:* 30 August 2011 22:35
> *To:* nginx@nginx.org
> *Subject:* Fire and forget requests****
>
> ** **
>
> Hi,
>
> 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.
>
> 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.
>
> 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.
>
> Any advice would be welcome.
>
> Thanks,
> Guy****
>
> _______________________________________________
> nginx mailing list
> nginx@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx
>
>


--
Bradley Falzon
brad@teambrad.net
_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx
Subject Author Posted

Fire and forget requests

Guy Knights August 30, 2011 05:36PM

Re: Fire and forget requests

Alexandr Gomoliako August 30, 2011 05:50PM

RE: Fire and forget requests

Richard Kearsley August 30, 2011 05:58PM

Re: Fire and forget requests

Bradley Falzon August 30, 2011 08:26PM

Re: Fire and forget requests

Valery Kholodkov August 30, 2011 10:46PM

Re: Fire and forget requests

jdm August 31, 2011 05:44AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 166
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready