(0) exportieren Drucken
Alle erweitern

Bereiche und Tagging (Rollencache für Azure Cache)

Letzte Aktualisierung: September 2014

noteHinweis
Hilfestellung bei der Auswahl des für Ihre Anwendung geeigneten Azure Cache-Angebots finden Sie unter Welches Azure-Cacheangebot eigent sich am besten für mich?.

Rolleninterner Cache unterstützt das Erstellen und Verwenden benutzerdefinierter Bereiche. Diese Funktion steht für Caches zur Verfügung, die in rollenbasiertem Rolleninterner Cache gespeichert sind. Ein Bereich ist eine Untergruppe für zwischengespeicherte Elemente. Bereiche unterstützen auch Anmerkungen für zwischengespeicherte Elemente mithilfe zusätzlicher beschreibender Zeichenfolgen, die als Tags bezeichnet werden. Bereiche unterstützen Suchvorgänge für alle mit Tags versehenen Elemente in diesem Bereich.

noteHinweis
Bereiche und Tagging werden in Microsoft Azure Shared Caching nicht unterstützt.

Bereiche sind optional. Wenn Sie sie verwenden möchten, müssen Sie sie im Anwendungscode mithilfe der Methode CreateRegion ausdrücklich erstellen. Nachdem ein Bereich erstellt wurde, können Sie Objekten Tags hinzufügen, die in den Bereich eingefügt werden. Es sind Überladungen für die Methoden Add und Put verfügbar, die einen Bereichsnamen annehmen können. Wenn Sie einen Bereich nach Objekten mit einem angegebenen Tag durchsuchen möchten, verwenden Sie die Methoden GetObjectsByTag, GetObjectsByAnyTag und GetObjectsByAllTags.

Aufgrund der architektonischen Anforderungen der Suchfunktion sind Objekte in einem Bereich auf einen einzigen Cacheserver eingeschränkt. In einer -Bereitstellung bedeutet dies, dass der gesamte Bereich auf einem einzelnen Server gespeichert ist. Wenn hohe Verfügbarkeit aktiviert ist, ist eine Sicherung des Bereichs auf einem anderen Server vorhanden. In sind diese Server Instanzen virtueller Computer der Rolle, die Rolleninterner Cache hostet. Dieses Verhalten unterscheidet sich von einem Szenario, in dem keine Bereiche verwendet werden. In diesem Szenario werden neue Elemente in einem verteilten In-Memory-Cache auf einem beliebigen verfügbaren Cacheserver gespeichert.

WarningWarnung
Ein Bereich muss als eine einzelne Entität auf einem der Cacheserver vorhanden sein. Aus diesem Grund muss die Menge des Zwischenspeichern-Arbeitsspeichers, der für eine einzelne Rolleninstanz verfügbar ist, größer als der größte erwartete Bereich sein. Verwenden Sie ggf. mehrere kleinere Bereiche, um sich mit den Vorteilen von Bereichen und Tagging sowie des verteilten Caches vertraut zu machen.

Das folgende Beispiel zeigt, wie ein Bereich namens Test erstellt wird.

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

Das folgende Beispiel zeigt, wie dem Bereich Test drei Objekte mit Tags hinzugefügt werden.

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

Das folgende Beispiel zeigt, wie der Bereich Test nach allen Objekten mit dem Tag Tag1 durchsucht wird.

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

Siehe auch

Anzeigen:
© 2014 Microsoft