On Tuesday 10 May 2016 22:12:59 Muhui Jiang wrote: > Hi > > >You've misread the source code. HTTP/2 windows are handled in > >ngx_http_v2_send_chain(), which is only called for response body > >data. > > when the window is blocked, Nginx logs that the headers frame has been sent > out, however I cannot receive any response headers. The same client tried > on h2o and I can receive the response headers. >
In addition, nginx uses SSL buffer to optimize record sizes. You can tune it using the "ssl_buffer_size" directive: http://nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_buffer_size > >The prioritization has effect when there is concurrency for > >connection. In your case from nginx point of view there was > >only one stream in processing at any moment. The previous > >stream was completed before the new one has been received. > > Let me explain my strategy in detail. I used some requests(stream id 1-15) > to consume the window (65535) And then block the window without sending any > window update frame(I have sent a very large stream update before). Then I > send the next 6 streams with different priorities. At this moment, the 6 > streams should be blocked. Nginx should have enough time to handle the > priority. Then I send a very large window update frame, but nginx will > process the stream one by one with no priority observation. What I want to > say is, only when the file is really large then the priority can be > observed. But I have give enough time to Nginx by block the request. Nginx > should handle the priority though the file is really small. If you need > more information, please tell me. Many Thanks > [..] Ok, now I understand your case. You are right, currently in this particular case priorities aren't handled. wbr, Valentin V. Bartenev _______________________________________________ nginx mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx
