Desenvolver para o Cache em Função do Azure

Atualizado: agosto de 2015

ImportantImportante
A Microsoft recomenda que todos os novos desenvolvimentos usem Cache Redis do Azure. Para documentação atual e orientação sobre como escolher uma oferta de Cache do Azure, consulte Qual oferta de Cache do Azure é ideal para mim?

O Cache do Microsoft Azure fornece um conjunto de APIs para adicionar, atualizar e remover itens de um cache. O uso das classes e métodos do namespace Microsoft.ApplicationServer.Caching é uma maneira direta de interagir com um cache do Azure. Por outro lado, o uso de um dos provedores ASP.NET é uma maneira indireta de usar um cache do Azure. Os tópicos desta seção abrangem o uso programático direto do caching. Para obter mais informações sobre os provedores ASP.NET do caching, consulte Provedores de cache ASP.NET 4 para o Cache na Função do Azure.

O modelo de programação do caching é projetado para o padrão de programação cache-aside. Se os dados não estiverem presentes no cache, o aplicativo, e não o cache distribuído, deve recarregá-los para o cache a partir da fonte de dados original.

O código do aplicativo deve ser projetado para funcionar independentemente do cache, de modo que o aplicativo continue a funcionar se os dados em cache não estiverem disponíveis. Como os dados em cache não são persistidos de maneira durável, existe a possibilidade de que estejam indisponíveis. Por exemplo, se o servidor que contém os dados é reiniciado, os itens em cache na memória são perdidos. A solicitação de um item que não existe no cache é designada como um erro de cache.

Quando o recurso de alta disponibilidade do Cache na Função é usado, cópias de backup dos itens em cache ajudam a proteger contra falhas da máquina e do processo em um cluster de cache em execução. Porém, se todas as máquinas são reiniciadas, mesmo a alta disponibilidade não resulta em durabilidade. Os itens que exigem persistência devem usar um banco de dados ou outras técnicas de armazenamento persistente. O cache, nesse caso, fornece um mecanismo para melhorar o desempenho e a escalabilidade.

Existem muitas razões pelas quais o código pode se deparar com um erro de cache. Por exemplo, o item em cache pode ter expirado ou ter sido removido com base em políticas normais de expiração e remoção. Seja qual for o motivo, o código do aplicativo deve ser capaz de acessar a fonte de dados original para reinserir o item no cache.

Consulte também

Mostrar: