Régions et identification à l'aide de balises

Régions et identification à l'aide de balises pour service de cache géré Azure

Mis à jour: août 2015

ImportantImportant
Microsoft recommande que tous les nouveaux développements utilisent le Cache Redis Azure. Pour une documentation et des conseils actualisés sur le choix d'une offre de Cache Azure, voir Quelle est l'offre Azure Cache qui me convient ?

La cache Microsoft Azure prend en charge la création et l'utilisation de régions définies par l'utilisateur. Une région est un sous-groupe d'éléments mis en cache. Les régions prennent également en charge l'annotation des éléments mis en cache à l'aide de chaînes descriptives supplémentaires appelées balises. Elles prennent en charge la possibilité de réaliser des opérations de recherche sur n'importe quel élément balisé dans cette région.

Les régions sont facultatives. Si vous souhaitez les utiliser, créez-les explicitement dans le code à l'aide de la méthode CreateRegion. Une fois la région créée, vous pouvez ajouter des balises aux objets insérés dans celle-ci. Il existe des surcharges sur les méthodes Add et Put qui acceptent un nom de région. Pour rechercher dans une région les objets associés à une balise donnée, utilisez les méthodes GetObjectsByTag, GetObjectsByAnyTag et GetObjectsByAllTags.

Dans le service caché managé, la mémoire du cache est distribuée entre différentes zones du service. En raison des exigences en matière d'architecture de la fonctionnalité de recherche, les objets d'une région sont situés dans une seule zone de la mémoire du service de cache. Si la haute disponibilité est activée, une sauvegarde de la région existe dans une zone différente de la mémoire du service de cache. Ce comportement est différent dans un scénario dans lequel les régions ne sont pas utilisées. Dans ce scénario, les nouveaux éléments dans le cache sont distribués entre toutes les zones de mémoire du service de cache.

WarningAvertissement
Dans la mesure où tous les éléments d'une région doivent être situés dans la même zone de mémoire du service de cache, il est possible que des éléments soient évincés du cache, même si la mémoire restante semble être suffisante. Utilisez potentiellement plusieurs petites régions pour bénéficier des avantages des régions et du balisage.

L'exemple suivant montre comment créer une région nommée Test.

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

L'exemple suivant montre comment ajouter trois objets à la région Test avec des balises.

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");

L'exemple suivant montre comment rechercher dans la région Test tous les objets incluant la balise Tag1.

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

Voir aussi

Afficher:
© 2016 Microsoft