proxy_cache_background_update leads to 200 ms delay

Lucas Rolff lucas at lucasrolff.com
Sat Jul 7 14:42:13 UTC 2018


It's not a combination of tcp_nopush and proxy_cache_background_update that creates this delay.

tcp_nopush (TCP_CORK in Linux) introduces a delay of packets being sent for up to 200ms or until the packet size gets to the defined MTU.

proxy_cache_background_update (if I remember correctly), will do the common checks at the origin to check if a file changed, since this request performed is (often) less than the MTU, you'll end up having to wait for the 200ms delay.

So disabling tcp_nopush also disables the 200ms delay.

On 07/07/2018, 14.15, "nginx on behalf of stephan13360" <nginx-bounces at nginx.org on behalf of nginx-forum at forum.nginx.org> wrote:

    Wow, thats it! The delay is gone.
    
    For now I am satisfied that the delay is gone and will read up some more on
    tcp_nopush.
    
    For the future: Is there any information on why the combination of
    tcp_nopush and proxy_cache_background_update create the delay and not the
    STALE response you get when the backend ist down and
    proxy_cache_background_update is off?
    
    Posted at Nginx Forum: https://forum.nginx.org/read.php?2,280434,280444#msg-280444
    
    _______________________________________________
    nginx mailing list
    nginx at nginx.org
    http://mailman.nginx.org/mailman/listinfo/nginx
    



More information about the nginx mailing list