Interação da política de cache – idade máxima e desatualização máxima
Para ajudar a garantir que o conteúdo mais atualizado é retornado para o aplicativo cliente, a interação dos requisitos de revalidação do servidor e da política de cache de cliente sempre resulta na política de cache mais conservadora. Todos os exemplos deste tópico ilustram a política de cache para um recurso que é armazenado em cache em 1º de janeiro e expira em 4 de janeiro.
Nos seguintes exemplos, o valor máximo de desatualização (maxStale
) é usado em conjunto com uma idade máxima (maxAge
):
Se a política de cache definir
maxAge
= 5 dias e não especificar um valormaxStale
, de acordo com o valormaxAge
, o conteúdo será utilizável até 6 de janeiro. No entanto, de acordo com os requisitos de revalidação do servidor, o conteúdo expirará em 4 de janeiro. Como a data de expiração do conteúdo é mais conservadora (anterior), ela terá precedência sobre a políticamaxAge
. Portanto, o conteúdo expirará em 4 de janeiro e deverá ser revalidado, embora sua idade máxima não tenha sido atingida.Se a política de cache definir
maxAge
= 5 dias emaxStale
= 3 dias, de acordo com o valormaxAge
, o conteúdo será utilizável até 6 de janeiro. De acordo com o valormaxStale
, o conteúdo será utilizável até 7 de janeiro. Portanto, o conteúdo será revalidado em 6 de janeiro.Se a política de cache definir
maxAge
= 5 dias emaxStale
= 1 dia, de acordo com o valormaxAge
, o conteúdo será utilizável até 6 de janeiro. De acordo com o valormaxStale
, o conteúdo será utilizável até 5 de janeiro. Portanto, o conteúdo será revalidado em 5 de janeiro.
Quando a idade máxima for menor que a data de expiração do conteúdo, o comportamento de cache mais conservador sempre prevalecerá e o valor máximo de desatualização não terá nenhum efeito. Os seguintes exemplos ilustram o efeito de definir um valor máximo de desatualização (maxStale
) quando a idade máxima (maxAge
) for atingida antes da expiração do conteúdo:
Se a política de cache definir
maxAge
= 1 dia e não especificar um valor para o valormaxStale
, o conteúdo será revalidado em 2 de janeiro, mesmo que não tenha expirado.Se a política de cache definir
maxAge
= 1 dia emaxStale
= 3 dias, o conteúdo será revalidado em 2 de janeiro para impor a configuração de política mais conservadora.Se a política de cache definir
maxAge
= 1 dia emaxStale
= 1 dia, o conteúdo será revalidado em 2 de janeiro.