Eu tenho um problema bastante estranho. No meu ambiente, estamos executando um cluster de balanceamento de carga de 8 servidores apache com um backend mestre-mestre do MySQL. Na frente do apache, temos o verniz na camada de cache.
Temos rodado o mod_pagespeed do Apache há várias semanas e, na maior parte do tempo, ele tem funcionado muito bem. O problema surge quando fazemos novas atualizações de código do Git e / e todos os recursos do JS / CSS são alterados.
Basicamente, o problema parece ser duplo. Primeiro, após o push do código, geralmente aproveitamos a oportunidade para limpar o verniz, reiniciar o apache e reiniciar o verniz. Ao fazer isso, todos os arquivos mod_pagespeed combinied / minified são limpos, garantindo que todos os novos recursos JS / CSS sejam atualizados. O problema é, ao fazer isso, os nomes de arquivos que mod_pagespeed criam mudanças, mas os arquivos antigos (aparecem) ainda são armazenados em cache para muitas pessoas, levando a resultados muito inesperados. No entanto, se não reiniciarmos o apache, as alterações nos arquivos poderão ou não aparecer no lado do cliente devido aos recursos minúsculos armazenados em cache.
A solução simples é desabilitar mod_pagespeed, no entanto, prefiro não fazer isso, pois causou um impacto bastante grande no desempenho.
Sinto que deve haver uma maneira melhor de lidar com as inconsistências no cache entre o cliente e o servidor para evitar que as pessoas percorram o limite ou realizem um grande número de atualizações de página para ver uma página de trabalho.
Eu posso fornecer snippets de configuração se alguém precisar deles.
Se você quiser inspecionar o site, fonte, cabeçalhos ou qualquer coisa, tente os seguintes endereços:
link
link
Obrigado antecipadamente!