Welcome! Log In Create A New Profile

Advanced

Re: nginx http2 pictures timeout

Valentin V. Bartenev
March 17, 2016 09:24AM
On Thursday 17 March 2016 07:04:11 meteor8488 wrote:
> Hi All,
>
> After I upgrade nginx to 1.9.12 and enabled http2 for my website. I found a
> wired issue related with download pictures.
>
> My website is a photo-sharing websites. So on each page there are about
> 100-200 pictures, the size of each of them may from 10K to 500K.
>
> In the past (http and https with spdy), I'm using below settings:
>
> client_body_timeout 10;
> client_header_timeout 10;
> keepalive_timeout 30;
> send_timeout 30;
>
> keepalive_requests 200;
> keepalive_disable none;
> reset_timedout_connection on;
>
> And everything is good. For users from different countries, they can view
> the pictures without any error.
>
> But after I upgrade to http2, with the same settings, it seems for users who
> have a good bandwidth, everything is fine. But for users who are from
> different countries, some of them experience issue that on the webpage some
> pictures can't display properly. And if they refresh the webpage for 1 times
> or more, then the whole webpage can display as normal, all pictures are
> downloaded and display.
>
>
> I tried to change send_timeout value from 30s to 300s, then it seems it can
> fix the problem. I used firefox to monitor the webpage load speed, I can see
> for the pictures of the webpage, the waiting time is pretty long, sometimes
> it's more than 60s - 120s, and then firefox start to receiving the
> pictures.
>
> My understanding is that after enable http2, nginx are using "Multiplexing
> and concurrency" to send out pictures, which mean for the webpage with 200
> pictures, the web browser is ready to receive all pictures when the
> connections is established. But for clients who has limited network
> bandwidth to the server, they can only download the pictures slowly. And
> then some of the pictures will be timeout and can't display.
>
> So, is there any better solution to fix this kind of issue?
>
[..]

You can try to lower concurrency in HTTP/2 connection.

See the "http2_max_concurrent_streams" directive:
http://nginx.org/r/http2_max_concurrent_streams

wbr, Valentin V. Bartenev

_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx
Subject Author Posted

nginx http2 pictures timeout

meteor8488 March 17, 2016 07:04AM

Re: nginx http2 pictures timeout

Phil Lello March 17, 2016 07:42AM

Re: nginx http2 pictures timeout

meteor8488 March 17, 2016 07:32PM

Re: nginx http2 pictures timeout

Valentin V. Bartenev March 17, 2016 09:24AM

Re: nginx http2 pictures timeout

meteor8488 March 17, 2016 07:34PM

Re: nginx http2 pictures timeout

JoakimR March 28, 2016 12:00AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 84
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready