Política de cache

Uma política de cache define as regras que são usadas para determinar se uma solicitação pode ser atendida usando uma cópia armazenada em cache do recurso solicitado. Os aplicativos especificam requisitos de cache de cliente para atualização, mas a política de cache efetiva é determinada pelos requisitos de cache de cliente, requisitos de expiração de conteúdo do servidor e requisitos de revalidação do servidor. A interação dos requisitos da política de cache de cliente e do servidor sempre resulta na política de cache mais conservadora, para ajudar a garantir que o conteúdo mais atualizado é retornado para o aplicativo cliente.

As políticas de cache são baseadas na localização ou em tempo. Uma política de cache baseada na localização define a atualização das entradas armazenadas em cache de acordo com o local em que o recurso solicitado pode ser obtido. Uma política de cache baseada em tempo define a atualização das entradas armazenadas em cache usando a hora em que o recurso foi recuperado, os cabeçalhos retornados com o recurso e a hora atual. A maioria dos aplicativos pode usar a política de cache baseada em tempo padrão, que implementa a política de cache especificada no RFC 2616, disponível no site da IETF (Internet Engineering Task Force).

As classes descritas na tabela a seguir são usadas para especificar políticas de cache.

Nome da classe Descrição
HttpRequestCachePolicy Representa as políticas de cache baseadas na localização e em tempo para recursos solicitados usando objetos HttpWebRequest.
RequestCachePolicy Representa as políticas de cache baseadas na localização ou a política de cache baseada em tempo Default para recursos solicitados usando objetos WebRequest.
HttpCacheAgeControl Especifica os valores usados para criar objetos HttpRequestCachePolicy baseados em tempo.
HttpRequestCacheLevel Especifica os valores usados para criar objetos HttpRequestCachePolicy baseados na localização e em tempo.
RequestCacheLevel Especifica os valores usados para criar objetos RequestCachePolicy baseados na localização e em tempo Default.

Defina uma política de cache para todas as solicitações feitas pelo aplicativo ou para solicitações individuais. Ao especificar uma política de cache no nível do aplicativo e uma política de cache no nível da solicitação, a política no nível da solicitação é usada. Especifique uma política de cache no nível do aplicativo de forma programática ou usando os arquivos de configuração do aplicativo ou do computador. Para obter mais informações, consulte Elemento <requestCaching> (configurações de rede).

Para criar uma política de cache, você deve criar um objeto de política criando uma instância da classe RequestCachePolicy ou HttpRequestCachePolicy. Para especificar a política em uma solicitação, defina a propriedade CachePolicy da solicitação com o objeto de política. Ao definir uma política no nível do aplicativo de forma programática, defina a propriedade DefaultCachePolicy com o objeto de política.

Para obter exemplos de código que demonstram como criar e usar políticas de cache, consulte Configurando o cache em aplicativos de rede.

Confira também