Regiões e marcação para o serviço de cache gerenciado do Azure

Importante

A Microsoft recomenda que todos os novos desenvolvimentos usem o Cache Redis do Azure. Para obter documentação e diretrizes atuais sobre como escolher uma oferta de Cache do Azure, confira qual oferta do Cache do Azure é ideal para mim?

Microsoft Azure Cache dá suporte à criação e ao uso de regiões definidas pelo usuário. Uma região é um subgrupo de itens em cache. As regiões também oferecem suporte à anotação de itens em cache com cadeias de caracteres descritivas adicionais, conhecidas como marcas. As regiões oferecem suporte à capacidade de realizar operações de pesquisa em qualquer item marcado nessa região.

Considerações sobre regiões

As regiões são opcionais; se você quiser usá-los, crie-os explicitamente no código com o método CreateRegion . Depois de criar uma região, você pode adicionar marcas aos objetos inseridos nessa região. Há sobrecargas nos métodos Adicionar e Colocar que aceitam um nome de região. Para pesquisar objetos em uma região com uma determinada marca, use os métodos GetObjectsByTag, GetObjectsByAnyTag e GetObjectsByAllTags.

Em Serviço de Cache Gerenciado, a memória do cache é distribuída em diferentes áreas do serviço. Devido aos requisitos arquitetônicos da funcionalidade de pesquisa, os objetos de uma região são localizados em uma única área de memória no serviço de cache. Se a alta disponibilidade está ativada, existe um backup da região em uma área diferente da memória no serviço de cache. Esse comportamento difere do cenário em que não são usadas regiões. Nesse cenário, novos itens no cache são distribuídos por todas as áreas de memória do serviço de cache.

Aviso

Como todos os itens de uma região devem necessariamente estar localizados na mesma área de memória do serviço de cache, é possível que itens sejam removidos do cache mesmo que pareça haver memória restante suficiente. O uso de várias regiões menores tende a otimizar os benefícios das regiões e da marcação.

Exemplos

O exemplo a seguir mostra como criar uma região chamada Test.

DataCache cache = new DataCache("default");
cache.CreateRegion("Test");

O exemplo a seguir mostra como adicionar três objetos à região Test com marcas.

List<DataCacheTag> tagList1 = new List<DataCacheTag>()
{ 
    new DataCacheTag("Tag1"),
    new DataCacheTag("Tag2")
};
List<DataCacheTag> tagList2 = new List<DataCacheTag>()
{
    new DataCacheTag("Tag3")
};
cache.Put("Key1", "Value1", tagList1, "Test");
cache.Put("Key2", "Value2", tagList1, "Test");
cache.Put("Key3", "Value3", tagList2, "Test");

O exemplo a seguir mostra como pesquisar a região Test em busca de objetos que tenham a marca Tag1.

foreach (KeyValuePair<string, object> result in 
    cache.GetObjectsByTag(new DataCacheTag("Tag1"), "Test"))
{
    string keyValue = result.Key;
    string objectValue = result.Value.ToString();
}

Consulte Também

Outros recursos

Recursos do serviço de cache gerenciado do Azure