Hello! On Wed, Jul 20, 2016 at 06:33:11PM -0700, Alexey Ivanov wrote:
> > > On Jul 20, 2016, at 6:23 PM, Maxim Dounin <mdou...@mdounin.ru> wrote: > > > > Hello! > > > > On Wed, Jul 20, 2016 at 03:34:46PM -0700, Alexey Ivanov wrote: > > > >> Speaking of trailers: we had couple of use cases for HTTP > >> trailers, most of them were around streaming data to user. > >> > >> For example, when webpage is generated we send headers and part > >> of the body(usually up to `</head>`) almost immediately, but > >> then we start querying all the micro services for the content > >> (SOA, yay!). > >> The problem is that upstreams will inevitably fail/timeout, and > >> when that happens there is no way to pass any metadata about the > >> error to nginx, since headers are already sent. Using trailers > >> here may improve MTTR since backend metadata is available on the > >> frontend. > >> > >> Another example may be computing checksums for data while you > >> stream it and putting it in the trailer. This should reduce TTFB > >> by quite a lot on some workloads we have. > > > > Do you actually use something like this, or know places where > > something like this is actually used? > These are examples from our production. Currently we are using > workarounds for both of these problems. Though I'm not sure that > we would use trailers if they were supported, since it's one of > very obscure HTTP/1.1 features that people do not usually know > about. > > That is starting to change bit by bit though, since people try > using gRPC more and more. Could you please elaborate what exactly you do use now and if you know any examples of trailers being used instead? -- Maxim Dounin http://nginx.org/ _______________________________________________ nginx-devel mailing list nginx-devel@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-devel