Nginx: leia o arquivo de cache temporário

1

Eu uso ngx_http_proxy_module com proxy_ignore_client_abort para arquivos de cache. Então, quando o cliente fechar a conexão, o nginx continuará copiando o arquivo do backend para o servidor atual.

Mas quando outro usuário tentar obter este arquivo (que ainda está copiando), o nginx irá para o backend para obter uma nova cópia do arquivo e tentará armazená-lo em cache também.

Eu posso usar proxy_cache_lock para evitar isso. Mas é uma má ideia, porque o arquivo pode ser muito grande e terá muito tempo para esperar enquanto o arquivo será armazenado em cache.

Como posso dizer ao nginx para ler este arquivo temporário e não esperar até que o arquivo seja armazenado em cache?

    
por fl00r 06.05.2012 / 09:15

1 resposta

1

Você está procurando entregar um objeto obsoleto do cache. Isso pode ser feito em caso de erro, tempo limite para o back-end ou durante a atualização.

proxy_cache_use_stale updating error timeout;
    
por 07.05.2012 / 09:15

Tags