Is it possible that nginx will not buffer the client body?

Weibin Yao yaoweibin at gmail.com
Tue Feb 26 14:13:11 UTC 2013


It still worked in my box[?]. Can you show me the debug.log (
http://wiki.nginx.org/Debugging)? You need recompile  with --with-debug
configure argument and set debug level in error_log directive.

Thanks

2013/2/25 Pasi Kärkkäinen <pasik at iki.fi>

> On Mon, Feb 25, 2013 at 10:13:42AM +0800, Weibin Yao wrote:
> >    Can you show me your configure? It works for me with nginx-1.2.7.
> >    Thanks.
> >
>
> Hi,
>
> I'm using the nginx 1.2.7 el6 src.rpm rebuilt with "headers more" module
> added,
> and your patch.
>
> I'm using the following configuration:
>
> server {
>         listen                  public_ip:443 ssl;
>         server_name             service.domain.tld;
>
>         ssl                     on;
>         keepalive_timeout       70;
>
>         access_log              /var/log/nginx/access-service.log;
>         access_log              /var/log/nginx/access-service-full.log
> full;
>         error_log               /var/log/nginx/error-service.log;
>
>         client_header_buffer_size 64k;
>         client_header_timeout   120;
>
>         proxy_next_upstream error timeout invalid_header http_500 http_502
> http_503;
>         proxy_set_header Host $host;
>         proxy_set_header X-Real-IP $remote_addr;
>         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
>         proxy_redirect     off;
>         proxy_buffering    off;
>         proxy_cache        off;
>
>         add_header Last-Modified "";
>         if_modified_since  off;
>
>         client_max_body_size    262144M;
>         client_body_buffer_size 1024k;
>         client_body_timeout     240;
>
>         chunked_transfer_encoding off;
>
> #       client_body_postpone_sending    64k;
> #       proxy_request_buffering         off;
>
>         location / {
>
>                 proxy_pass      https://service-backend;
>
>         }
> }
>
>
> Thanks!
>
> -- Pasi
>
>
>
> >    2013/2/22 Pasi KÀrkkÀinen <[1]pasik at iki.fi>
> >
> >      On Fri, Feb 22, 2013 at 11:25:24AM +0200, Pasi KÀrkkÀinen wrote:
> >      > On Fri, Feb 22, 2013 at 10:06:11AM +0800, Weibin Yao wrote:
> >      > > Â  Â Use the patch I attached in this mail thread instead,
> don't use
> >      the pull
> >      > > Â  Â request patch which is for tengine.Ã*
> >      > > Â  Â Thanks.
> >      > >
> >      >
> >      > Oh sorry I missed that attachment. It seems to apply and build OK.
> >      > I'll start testing it.
> >      >
> >
> >      I added the patch on top of nginx 1.2.7 and enabled the following
> >      options:
> >
> >      client_body_postpone_sending    64k;
> >      proxy_request_buffering         off;
> >
> >      after that connections through the nginx reverse proxy started
> failing
> >      with errors like this:
> >
> >      [error] 29087#0: *49 upstream prematurely closed connection while
> >      reading response header from upstream
> >      [error] 29087#0: *60 upstream sent invalid header while reading
> response
> >      header from upstream
> >
> >      And the services are unusable.
> >
> >      Commenting out the two config options above makes nginx happy again.
> >      Any idea what causes that? Any tips how to troubleshoot it?
> >      Thanks!
> >
> >      -- Pasi
> >
> >      >
> >      > > Â  Â 2013/2/22 Pasi KÃ*â*¬rkkÃ*â*¬inen <[1][2]pasik at iki.fi>
> >      > >
> >      > > Â  Â  Â On Fri, Jan 18, 2013 at 10:38:21AM +0200, Pasi
> >      KÃ*â*¬rkkÃ*â*¬inen wrote:
> >      > > Â  Â  Â > On Thu, Jan 17, 2013 at 11:15:58AM +0800, ??????
> wrote:
> >      > > Â  Â  Â > > Ã* Â Ã* Yes. It should work for any request method.
> >      > > Â  Â  Â > >
> >      > > Â  Â  Â >
> >      > > Â  Â  Â > Great, thanks, I'll let you know how it works for me.
> >      Probably in two
> >      > > Â  Â  Â weeks or so.
> >      > > Â  Â  Â >
> >      > >
> >      > > Â  Â  Â Hi,
> >      > >
> >      > > Â  Â  Â Adding the tengine pull request 91 on top of nginx 1.2.7
> >      doesn't work:
> >      > >
> >      > > Â  Â  Â cc1: warnings being treated as errors
> >      > > Â  Â  Â src/http/ngx_http_request_body.c: In function
> >      > > Â  Â  Â 'ngx_http_read_non_buffered_client_request_body':
> >      > > Â  Â  Â src/http/ngx_http_request_body.c:506: error: implicit
> >      declaration of
> >      > > Â  Â  Â function 'ngx_http_top_input_body_filter'
> >      > > Â  Â  Â make[1]: *** [objs/src/http/ngx_http_request_body.o]
> Error 1
> >      > > Â  Â  Â make[1]: Leaving directory `/root/src/nginx/nginx-1.2.7'
> >      > > Â  Â  Â make: *** [build] Error 2
> >      > >
> >      > > Â  Â  Â ngx_http_top_input_body_filter() cannot be found from
> any
> >      .c/.h files..
> >      > > Â  Â  Â Which other patches should I apply?
> >      > >
> >      > > Â  Â  Â Perhaps this?
> >      > > Â  Â
> >      Â [2][3]
> https://github.com/cfsego/limit_upload_rate/blob/master/for-nginx.patch
> >      > >
> >      > > Â  Â  Â Thanks,
> >      > > Â  Â  Â -- Pasi
> >      > >
> >      > > Â  Â  Â >
> >      > >      > > Ã*  Ã* 2013/1/16 Pasi KÃ**â*¬rkkÃ**â*¬inen
> >      <[1][3][4]pasik at iki.fi>
> >      > > Â  Â  Â > >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* On Sun, Jan 13, 2013 at 08:22:17PM
> +0800,
> >      ?????? wrote:
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** This patch should work
> between
> >      nginx-1.2.6 and
> >      > > Â  Â  Â nginx-1.3.8.
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** The documentation is here:
> >      > > Â  Â  Â > >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** ##
> >      client_body_postpone_sending ##
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Syntax:
> >      **client_body_postpone_sending** `size`
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Default: 64k
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Context: `http, server,
> >      location`
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** If you specify the
> >      `proxy_request_buffering` or
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã**
> `fastcgi_request_buffering` to
> >      be off, Nginx will
> >      > > Â  Â  Â send the body
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* to backend
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** when it receives more than
> >      `size` data or the
> >      > > Â  Â  Â whole request body
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* has been
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** received. It could save
> the
> >      connection and reduce
> >      > > Â  Â  Â the IO number
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* with
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** backend.
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** ##
> proxy_request_buffering ##
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Syntax:
> >      **proxy_request_buffering** `on | off`
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Default: `on`
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Context: `http, server,
> >      location`
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Specify the request body
> will
> >      be buffered to the
> >      > > Â  Â  Â disk or not. If
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* it's off,
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** the request body will be
> >      stored in memory and sent
> >      > > Â  Â  Â to backend
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* after Nginx
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** receives more than
> >      `client_body_postpone_sending`
> >      > > Â  Â  Â data. It could
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* save the
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** disk IO with large request
> >      body.
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Ã* Ã** Ã*
> Ã** Ã*
> >      Note that, if you specify it
> >      > > Â  Â  Â to be off, the nginx
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* retry mechanism
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** with unsuccessful response
> >      will be broken after
> >      > > Â  Â  Â you sent part of
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* the
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** request to backend. It
> will
> >      just return 500 when
> >      > > Â  Â  Â it encounters
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* such
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** unsuccessful response.
> This
> >      directive also breaks
> >      > > Â  Â  Â these
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* variables:
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** $request_body,
> >      $request_body_file. You should not
> >      > > Â  Â  Â use these
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* variables any
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** more while their values
> are
> >      undefined.
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* >
> >      > > Â  Â  Â > >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* Hello,
> >      > > Â  Â  Â > >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* This patch sounds exactly like what I
> need
> >      aswell!
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* I assume it works for both POST and PUT
> >      requests?
> >      > > Â  Â  Â > >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* Thanks,
> >      > > Â  Â  Â > >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* -- Pasi
> >      > > Â  Â  Â > >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Hello!
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** @yaoweibin
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** If you are
> eager
> >      for this feature, you
> >      > > Â  Â  Â could try my
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** patch:
> >      > > Â  Â  Â [2][2][4][5]https://github.com/taobao/tengine/pull/91.
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* This patch has
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** been
> running in
> >      our production servers.
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** what's the nginx
> >      version your patch based on?
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Thanks!
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** On Fri, Jan 11,
> 2013 at
> >      5:17 PM, Ã***Ã**
> >      > >      Ã***Ã**Ã*°Ã**Ã*±Ã**Ã*³
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* <[3][3][5][6]yaoweibin at gmail.com>
> wrote:
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** I know nginx
> >      team are working on it. You
> >      > > Â  Â  Â can wait for it.
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** If you are
> eager
> >      for this feature, you
> >      > > Â  Â  Â could try my
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** patch:
> >      > > Â  Â  Â [4][4][6][7]https://github.com/taobao/tengine/pull/91.
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* This patch has
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** been
> running in
> >      our production servers.
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** 2013/1/11 li
> >      zJay
> >      > > Â  Â  Â <[5][5][7][8]zjay1987 at gmail.com>
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Ã* Ã**
> Hello!
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Ã* Ã** is it
> >      possible that nginx will not
> >      > > Â  Â  Â buffer the client
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* body before
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Ã* Ã**
> handle
> >      the request to upstream?
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Ã* Ã** we
> want
> >      to use nginx as a reverse
> >      > > Â  Â  Â proxy to upload very
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* very big file
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Ã* Ã** to
> the
> >      upstream, but the default
> >      > > Â  Â  Â behavior of nginx is to
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* save the
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Ã* Ã** whole
> >      request to the local disk
> >      > > Â  Â  Â first before handle it
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* to the
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Ã* Ã**
> upstream,
> >      which make the upstream
> >      > > Â  Â  Â impossible to process
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* the file on
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Ã* Ã** the
> fly
> >      when the file is uploading,
> >      > > Â  Â  Â results in much high
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* request
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Ã* Ã**
> latency
> >      and server-side resource
> >      > > Â  Â  Â consumption.
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Ã* Ã**
> Thanks!
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Ã* Ã**
> >      > > Â  Â  Â _______________________________________________
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Ã* Ã** nginx
> >      mailing list
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Ã* Ã**
> >      [6][6][8][9]nginx at nginx.org
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Ã* Ã**
> >      > > Â  Â  Â [7][7][9][10]
> http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** --
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Weibin Yao
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** Developer @
> >      Server Platform Team of
> >      > > Â  Â  Â Taobao
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã**
> >      > > Â  Â  Â _______________________________________________
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã** nginx
> mailing
> >      list
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã**
> >      [8][8][10][11]nginx at nginx.org
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** Ã* Ã**
> >      > > Â  Â
> >      Â [9][9][11][12]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã**
> >      > > Â  Â  Â _______________________________________________
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã** nginx mailing list
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã**
> >      [10][10][12][13]nginx at nginx.org
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Ã* Ã**
> >      > > Â  Â
> >      Â [11][11][13][14]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** --
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Weibin Yao
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Developer @ Server
> Platform
> >      Team of Taobao
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > References
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** Visible links
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** 1.
> >      mailto:[12][14][15]zjay1987 at gmail.com
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** 2.
> >      > > Â  Â  Â [13][15][16]https://github.com/taobao/tengine/pull/91
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** 3.
> >      mailto:[14][16][17]yaoweibin at gmail.com
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** 4.
> >      > > Â  Â  Â [15][17][18]https://github.com/taobao/tengine/pull/91
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** 5.
> >      mailto:[16][18][19]zjay1987 at gmail.com
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** 6.
> >      mailto:[17][19][20]nginx at nginx.org
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** 7.
> >      > > Â  Â  Â [18][20][21]
> http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** 8.
> >      mailto:[19][21][22]nginx at nginx.org
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* Ã** 9.
> >      > > Â  Â  Â [20][22][23]
> http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* 10.
> >      mailto:[21][23][24]nginx at nginx.org
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > Ã** Ã* 11.
> >      > > Â  Â  Â [22][24][25]
> http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â > >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* >
> >      _______________________________________________
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > nginx mailing list
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* > [23][25][26]nginx at nginx.org
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* >
> >      [24][26][27]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â > >
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã*
> >      _______________________________________________
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* nginx mailing list
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã* [25][27][28]nginx at nginx.org
> >      > > Â  Â  Â > > Ã* Â Ã* Â Ã*
> >      [26][28][29]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â > >
> >      > > Â  Â  Â > > Ã* Â Ã* --
> >      > > Â  Â  Â > > Ã* Â Ã* Weibin Yao
> >      > > Â  Â  Â > > Ã* Â Ã* Developer @ Server Platform Team of Taobao
> >      > > Â  Â  Â > >
> >      > > Â  Â  Â > > References
> >      > > Â  Â  Â > >
> >      > > Â  Â  Â > > Ã* Â Ã* Visible links
> >      > > Â  Â  Â > > Ã* Â Ã* 1. mailto:[29][30]pasik at iki.fi
> >      > > Â  Â  Â > > Ã* Â Ã* 2.
> >      [30][31]https://github.com/taobao/tengine/pull/91
> >      > > Â  Â  Â > > Ã* Â Ã* 3. mailto:[31][32]yaoweibin at gmail.com
> >      > > Â  Â  Â > > Ã* Â Ã* 4.
> >      [32][33]https://github.com/taobao/tengine/pull/91
> >      > > Â  Â  Â > > Ã* Â Ã* 5. mailto:[33][34]zjay1987 at gmail.com
> >      > > Â  Â  Â > > Ã* Â Ã* 6. mailto:[34][35]nginx at nginx.org
> >      > > Â  Â  Â > > Ã* Â Ã* 7.
> >      [35][36]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â > > Ã* Â Ã* 8. mailto:[36][37]nginx at nginx.org
> >      > > Â  Â  Â > > Ã* Â Ã* 9.
> >      [37][38]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â > > Ã* Â 10. mailto:[38][39]nginx at nginx.org
> >      > > Â  Â  Â > > Ã* Â 11.
> >      [39][40]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â > > Ã* Â 12. mailto:[40][41]zjay1987 at gmail.com
> >      > > Â  Â  Â > > Ã* Â 13.
> >      [41][42]https://github.com/taobao/tengine/pull/91
> >      > > Â  Â  Â > > Ã* Â 14. mailto:[42][43]yaoweibin at gmail.com
> >      > > Â  Â  Â > > Ã* Â 15.
> >      [43][44]https://github.com/taobao/tengine/pull/91
> >      > > Â  Â  Â > > Ã* Â 16. mailto:[44][45]zjay1987 at gmail.com
> >      > > Â  Â  Â > > Ã* Â 17. mailto:[45][46]nginx at nginx.org
> >      > > Â  Â  Â > > Ã* Â 18.
> >      [46][47]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â > > Ã* Â 19. mailto:[47][48]nginx at nginx.org
> >      > > Â  Â  Â > > Ã* Â 20.
> >      [48][49]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â > > Ã* Â 21. mailto:[49][50]nginx at nginx.org
> >      > > Â  Â  Â > > Ã* Â 22.
> >      [50][51]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â > > Ã* Â 23. mailto:[51][52]nginx at nginx.org
> >      > > Â  Â  Â > > Ã* Â 24.
> >      [52][53]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â > > Ã* Â 25. mailto:[53][54]nginx at nginx.org
> >      > > Â  Â  Â > > Ã* Â 26.
> >      [54][55]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â >
> >      > > Â  Â  Â > > _______________________________________________
> >      > > Â  Â  Â > > nginx mailing list
> >      > > Â  Â  Â > > [55][56]nginx at nginx.org
> >      > > Â  Â  Â > > [56][57]
> http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  Â  Â >
> >      > > Â  Â  Â > _______________________________________________
> >      > > Â  Â  Â > nginx mailing list
> >      > > Â  Â  Â > [57][58]nginx at nginx.org
> >      > > Â  Â  Â > [58][59]
> http://mailman.nginx.org/mailman/listinfo/nginx
> >      > >
> >      > > Â  Â  Â _______________________________________________
> >      > > Â  Â  Â nginx mailing list
> >      > > Â  Â  Â [59][60]nginx at nginx.org
> >      > > Â  Â  Â [60][61]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > >
> >      > > Â  Â --
> >      > > Â  Â Weibin Yao
> >      > > Â  Â Developer @ Server Platform Team of Taobao
> >      > >
> >      > > References
> >      > >
> >      > > Â  Â Visible links
> >      > > Â  Â 1. mailto:[62]pasik at iki.fi
> >      > > Â  Â 2.
> >      [63]
> https://github.com/cfsego/limit_upload_rate/blob/master/for-nginx.patch
> >      > > Â  Â 3. mailto:[64]pasik at iki.fi
> >      > > Â  Â 4. [65]https://github.com/taobao/tengine/pull/91
> >      > > Â  Â 5. mailto:[66]yaoweibin at gmail.com
> >      > > Â  Â 6. [67]https://github.com/taobao/tengine/pull/91
> >      > > Â  Â 7. mailto:[68]zjay1987 at gmail.com
> >      > > Â  Â 8. mailto:[69]nginx at nginx.org
> >      > > Â  Â 9. [70]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  10. mailto:[71]nginx at nginx.org
> >      > > Â  11. [72]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  12. mailto:[73]nginx at nginx.org
> >      > > Â  13. [74]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  14. mailto:[75]zjay1987 at gmail.com
> >      > > Â  15. [76]https://github.com/taobao/tengine/pull/91
> >      > > Â  16. mailto:[77]yaoweibin at gmail.com
> >      > > Â  17. [78]https://github.com/taobao/tengine/pull/91
> >      > > Â  18. mailto:[79]zjay1987 at gmail.com
> >      > > Â  19. mailto:[80]nginx at nginx.org
> >      > > Â  20. [81]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  21. mailto:[82]nginx at nginx.org
> >      > > Â  22. [83]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  23. mailto:[84]nginx at nginx.org
> >      > > Â  24. [85]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  25. mailto:[86]nginx at nginx.org
> >      > > Â  26. [87]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  27. mailto:[88]nginx at nginx.org
> >      > > Â  28. [89]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  29. mailto:[90]pasik at iki.fi
> >      > > Â  30. [91]https://github.com/taobao/tengine/pull/91
> >      > > Â  31. mailto:[92]yaoweibin at gmail.com
> >      > > Â  32. [93]https://github.com/taobao/tengine/pull/91
> >      > > Â  33. mailto:[94]zjay1987 at gmail.com
> >      > > Â  34. mailto:[95]nginx at nginx.org
> >      > > Â  35. [96]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  36. mailto:[97]nginx at nginx.org
> >      > > Â  37. [98]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  38. mailto:[99]nginx at nginx.org
> >      > > Â  39. [100]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  40. mailto:[101]zjay1987 at gmail.com
> >      > > Â  41. [102]https://github.com/taobao/tengine/pull/91
> >      > > Â  42. mailto:[103]yaoweibin at gmail.com
> >      > > Â  43. [104]https://github.com/taobao/tengine/pull/91
> >      > > Â  44. mailto:[105]zjay1987 at gmail.com
> >      > > Â  45. mailto:[106]nginx at nginx.org
> >      > > Â  46. [107]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  47. mailto:[108]nginx at nginx.org
> >      > > Â  48. [109]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  49. mailto:[110]nginx at nginx.org
> >      > > Â  50. [111]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  51. mailto:[112]nginx at nginx.org
> >      > > Â  52. [113]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  53. mailto:[114]nginx at nginx.org
> >      > > Â  54. [115]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  55. mailto:[116]nginx at nginx.org
> >      > > Â  56. [117]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  57. mailto:[118]nginx at nginx.org
> >      > > Â  58. [119]http://mailman.nginx.org/mailman/listinfo/nginx
> >      > > Â  59. mailto:[120]nginx at nginx.org
> >      > > Â  60. [121]http://mailman.nginx.org/mailman/listinfo/nginx
> >      >
> >      > > _______________________________________________
> >      > > nginx mailing list
> >      > > [122]nginx at nginx.org
> >      > > [123]http://mailman.nginx.org/mailman/listinfo/nginx
> >      >
> >      > _______________________________________________
> >      > nginx mailing list
> >      > [124]nginx at nginx.org
> >      > [125]http://mailman.nginx.org/mailman/listinfo/nginx
> >
> >      _______________________________________________
> >      nginx mailing list
> >      [126]nginx at nginx.org
> >      [127]http://mailman.nginx.org/mailman/listinfo/nginx
> >
> >    --
> >    Weibin Yao
> >    Developer @ Server Platform Team of Taobao
> >
> > References
> >
> >    Visible links
> >    1. mailto:pasik at iki.fi
> >    2. mailto:pasik at iki.fi
> >    3.
> https://github.com/cfsego/limit_upload_rate/blob/master/for-nginx.patch
> >    4. mailto:pasik at iki.fi
> >    5. https://github.com/taobao/tengine/pull/91
> >    6. mailto:yaoweibin at gmail.com
> >    7. https://github.com/taobao/tengine/pull/91
> >    8. mailto:zjay1987 at gmail.com
> >    9. mailto:nginx at nginx.org
> >   10. http://mailman.nginx.org/mailman/listinfo/nginx
> >   11. mailto:nginx at nginx.org
> >   12. http://mailman.nginx.org/mailman/listinfo/nginx
> >   13. mailto:nginx at nginx.org
> >   14. http://mailman.nginx.org/mailman/listinfo/nginx
> >   15. mailto:zjay1987 at gmail.com
> >   16. https://github.com/taobao/tengine/pull/91
> >   17. mailto:yaoweibin at gmail.com
> >   18. https://github.com/taobao/tengine/pull/91
> >   19. mailto:zjay1987 at gmail.com
> >   20. mailto:nginx at nginx.org
> >   21. http://mailman.nginx.org/mailman/listinfo/nginx
> >   22. mailto:nginx at nginx.org
> >   23. http://mailman.nginx.org/mailman/listinfo/nginx
> >   24. mailto:nginx at nginx.org
> >   25. http://mailman.nginx.org/mailman/listinfo/nginx
> >   26. mailto:nginx at nginx.org
> >   27. http://mailman.nginx.org/mailman/listinfo/nginx
> >   28. mailto:nginx at nginx.org
> >   29. http://mailman.nginx.org/mailman/listinfo/nginx
> >   30. mailto:pasik at iki.fi
> >   31. https://github.com/taobao/tengine/pull/91
> >   32. mailto:yaoweibin at gmail.com
> >   33. https://github.com/taobao/tengine/pull/91
> >   34. mailto:zjay1987 at gmail.com
> >   35. mailto:nginx at nginx.org
> >   36. http://mailman.nginx.org/mailman/listinfo/nginx
> >   37. mailto:nginx at nginx.org
> >   38. http://mailman.nginx.org/mailman/listinfo/nginx
> >   39. mailto:nginx at nginx.org
> >   40. http://mailman.nginx.org/mailman/listinfo/nginx
> >   41. mailto:zjay1987 at gmail.com
> >   42. https://github.com/taobao/tengine/pull/91
> >   43. mailto:yaoweibin at gmail.com
> >   44. https://github.com/taobao/tengine/pull/91
> >   45. mailto:zjay1987 at gmail.com
> >   46. mailto:nginx at nginx.org
> >   47. http://mailman.nginx.org/mailman/listinfo/nginx
> >   48. mailto:nginx at nginx.org
> >   49. http://mailman.nginx.org/mailman/listinfo/nginx
> >   50. mailto:nginx at nginx.org
> >   51. http://mailman.nginx.org/mailman/listinfo/nginx
> >   52. mailto:nginx at nginx.org
> >   53. http://mailman.nginx.org/mailman/listinfo/nginx
> >   54. mailto:nginx at nginx.org
> >   55. http://mailman.nginx.org/mailman/listinfo/nginx
> >   56. mailto:nginx at nginx.org
> >   57. http://mailman.nginx.org/mailman/listinfo/nginx
> >   58. mailto:nginx at nginx.org
> >   59. http://mailman.nginx.org/mailman/listinfo/nginx
> >   60. mailto:nginx at nginx.org
> >   61. http://mailman.nginx.org/mailman/listinfo/nginx
> >   62. mailto:pasik at iki.fi
> >   63.
> https://github.com/cfsego/limit_upload_rate/blob/master/for-nginx.patch
> >   64. mailto:pasik at iki.fi
> >   65. https://github.com/taobao/tengine/pull/91
> >   66. mailto:yaoweibin at gmail.com
> >   67. https://github.com/taobao/tengine/pull/91
> >   68. mailto:zjay1987 at gmail.com
> >   69. mailto:nginx at nginx.org
> >   70. http://mailman.nginx.org/mailman/listinfo/nginx
> >   71. mailto:nginx at nginx.org
> >   72. http://mailman.nginx.org/mailman/listinfo/nginx
> >   73. mailto:nginx at nginx.org
> >   74. http://mailman.nginx.org/mailman/listinfo/nginx
> >   75. mailto:zjay1987 at gmail.com
> >   76. https://github.com/taobao/tengine/pull/91
> >   77. mailto:yaoweibin at gmail.com
> >   78. https://github.com/taobao/tengine/pull/91
> >   79. mailto:zjay1987 at gmail.com
> >   80. mailto:nginx at nginx.org
> >   81. http://mailman.nginx.org/mailman/listinfo/nginx
> >   82. mailto:nginx at nginx.org
> >   83. http://mailman.nginx.org/mailman/listinfo/nginx
> >   84. mailto:nginx at nginx.org
> >   85. http://mailman.nginx.org/mailman/listinfo/nginx
> >   86. mailto:nginx at nginx.org
> >   87. http://mailman.nginx.org/mailman/listinfo/nginx
> >   88. mailto:nginx at nginx.org
> >   89. http://mailman.nginx.org/mailman/listinfo/nginx
> >   90. mailto:pasik at iki.fi
> >   91. https://github.com/taobao/tengine/pull/91
> >   92. mailto:yaoweibin at gmail.com
> >   93. https://github.com/taobao/tengine/pull/91
> >   94. mailto:zjay1987 at gmail.com
> >   95. mailto:nginx at nginx.org
> >   96. http://mailman.nginx.org/mailman/listinfo/nginx
> >   97. mailto:nginx at nginx.org
> >   98. http://mailman.nginx.org/mailman/listinfo/nginx
> >   99. mailto:nginx at nginx.org
> >  100. http://mailman.nginx.org/mailman/listinfo/nginx
> >  101. mailto:zjay1987 at gmail.com
> >  102. https://github.com/taobao/tengine/pull/91
> >  103. mailto:yaoweibin at gmail.com
> >  104. https://github.com/taobao/tengine/pull/91
> >  105. mailto:zjay1987 at gmail.com
> >  106. mailto:nginx at nginx.org
> >  107. http://mailman.nginx.org/mailman/listinfo/nginx
> >  108. mailto:nginx at nginx.org
> >  109. http://mailman.nginx.org/mailman/listinfo/nginx
> >  110. mailto:nginx at nginx.org
> >  111. http://mailman.nginx.org/mailman/listinfo/nginx
> >  112. mailto:nginx at nginx.org
> >  113. http://mailman.nginx.org/mailman/listinfo/nginx
> >  114. mailto:nginx at nginx.org
> >  115. http://mailman.nginx.org/mailman/listinfo/nginx
> >  116. mailto:nginx at nginx.org
> >  117. http://mailman.nginx.org/mailman/listinfo/nginx
> >  118. mailto:nginx at nginx.org
> >  119. http://mailman.nginx.org/mailman/listinfo/nginx
> >  120. mailto:nginx at nginx.org
> >  121. http://mailman.nginx.org/mailman/listinfo/nginx
> >  122. mailto:nginx at nginx.org
> >  123. http://mailman.nginx.org/mailman/listinfo/nginx
> >  124. mailto:nginx at nginx.org
> >  125. http://mailman.nginx.org/mailman/listinfo/nginx
> >  126. mailto:nginx at nginx.org
> >  127. http://mailman.nginx.org/mailman/listinfo/nginx
>
> > _______________________________________________
> > nginx mailing list
> > nginx at nginx.org
> > http://mailman.nginx.org/mailman/listinfo/nginx
>
> _______________________________________________
> nginx mailing list
> nginx at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx
>



-- 
Weibin Yao
Developer @ Server Platform Team of Taobao
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20130226/fc43d62e/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 323.gif
Type: image/gif
Size: 100 bytes
Desc: not available
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20130226/fc43d62e/attachment-0001.gif>


More information about the nginx mailing list