A maioria dos sites é definida max-age=31536000
(1 ano) nos Cache-control
cabeçalhos de ativos estáticos, como imagens de logotipo. Exemplos:
Mas há uma exceção notável: o logotipo do Google possui max-age=691200
(8 dias).
Eu verifiquei os cabeçalhos no logotipo do Google no passado e, definitivamente, costumava ser de 1 ano. (Além disso, costumava fazer parte de um sprite e agora é uma imagem de logotipo independente, mas essa provavelmente é outra pergunta ...)
Quais poderiam ser razões técnicas válidas para que eles desejassem reduzir a vida útil do cache para apenas 8 dias? A página inicial do Google é uma das páginas mais cuidadosamente otimizadas do mundo, então imagino que haja um bom motivo.
Editar:
Certifique-se de entender esses pontos antes de responder:
Ninguém usa
max-age
vida útil curta para permitir a modificação de um ativo estático no futuro. Quando você o modifica, apenas o serve em um URL diferente. Então não, não tem nada a ver com os doodles do Google. Pense nisso: mesmo que o Google não entendesse esse truque básico do HTTP, oito dias ainda não seriam adequados, pois apenas os usuários que não têm o logotipo original em cache verão o doodle no dia do doodle - e então esse grupo de usuários continuaria vendo o doodle pelos 8 dias seguintes após o Google alterá-lo novamente :)Os servidores Web não se preocupam em "'encher' os caches dos clientes (ou proxies). O cliente gerencia isso sozinho - quando atinge seu próprio limite de armazenamento, apenas começa a eliminar os itens de menor prioridade para liberar espaço para novos itens. A pontuação de prioridade é baseada na pergunta "Qual a probabilidade de me beneficiar de ter armazenado em cache este URL?", O que não tem nada a ver com o
max-age
valor que o servidor enviou quando o URL foi originalmente solicitado; é uma heurística baseada na ' frecência ' solicitações para esse URL.max-age
simplesmente permite que o servidor defina um ponto de corte - o horário em que o cliente deve descartar o item, independentemente da frequência com que ele está sendo reutilizado. Seria muito agradável e confiável para um cliente / proxy a jusante confiar nos servidores de origem 'impedindo' de preencher seus caches, mas não acho que vivamos nesse mundo;)
Respostas:
Definir
max-age
para 8 dias em vez de 1 ano oferece ao Google um melhor controle sobre o modo como se apresenta ao mundo. Você está certo de que eles podem simplesmente usar um URL diferente para alterações temporárias, como o doodle do Google, mas se acharem que desejam alterar a aparência do logotipo corporativo real, faz sentido usar um tempo de expiração menor por dois motivos:As referências ao logotipo em qualquer uma das páginas existentes serão alteradas automaticamente - não é necessário modificá-las para usar um URL diferente.
As inúmeras páginas da web de terceiros que carregam o logotipo do Google exibem a nova versão automaticamente após oito dias ou menos.
Além disso, tempos de validade mais longos fornecem retornos decrescentes. Sem cache, um usuário típico pode carregar o logotipo do Google mil ou mais vezes por ano. Uma expiração de 8 dias reduz para 46 vezes por ano. Uma expiração de 1 ano reduz ainda mais esse potencial a menos de 1 vez por ano. Parece que o maior benefício, de longe, se deve ao fato de a imagem ser armazenada em cache - o cache por apenas 1 dia oferece um benefício enorme, e o cache por 8 dias estende um pouco isso.
A imagem acima tem apenas 7007 bytes de tamanho. Carregar isso a cada 8 dias significa que você carregará 312 kilobytes do logotipo deles ao longo de um ano. Isso realmente não é muito como uma porcentagem de todos os dados que você carrega do Google, e o pessoal do Google aparentemente decidiu que a flexibilidade que eles ganham com a expiração de oito dias é mais importante do que reduzir ainda mais esse número. Se eles pensassem o contrário, você pode apostar que eles usariam um tempo de expiração mais longo.
Eu não trabalho no Google e, mesmo que o fizesse, provavelmente não estaria em posição de saber o seu raciocínio com certeza, portanto, o exposto acima é um pouco especulativo. A resposta real poderia ser algo tão simples quanto: parecia uma boa ideia na época . No entanto, obviamente existe uma troca entre minimizar o tráfego e o controle criativo, e acho que podemos perceber desde o tempo de vencimento que o Google usa onde eles querem traçar essa linha.
Além disso, acho que vale a pena notar que o Google não é apenas um logotipo: é o principal recurso em sua página da web mais importante, e sua apresentação é algo com o qual é conhecido por ter muito cuidado. Os outros sites que você menciona (BBC, YouTube, Twitter e Yahoo) incluem o logotipo na página principal, mas em cada caso o logotipo é menor e um elemento muito menos importante da página do que o Google. O Google também fez várias alterações em seu logotipo ao longo dos anos (não, não estou falando de rabiscos), e não há razão para pensar que eles não farão isso de novo.
fonte
Provavelmente porque eles mudam o logotipo frequentemente, quando celebram uma personalidade ou um evento.
fonte
Provavelmente porque eles mudam seu logotipo com frequência: os servidores de cache estariam cheios de logotipos do Google que não são usados. Essa configuração faz com que os caches removam o logotipo do armazenamento mais cedo.
fonte