Продажи: 1-800-867-1389

Области и теги для управляемой службы кэша Azure

Обновлено: Май 2015 г.

noteПримечание
Руководство по выбору правильного предложения службы кэша Azure см. в разделе Какой кэш Azure подходит мне лучше всего?.

Кэш Microsoft Azure поддерживает создание и использование определяемых пользователями областей. Область — это подгруппа кэшированных элементов. Области также дополнительно поддерживают пометку кэшированных элементов описательными строками — тегами. Области позволяют вести поиск по элементам, помеченным тегами в области.

Области не являются обязательными. При необходимости их следует явным образом создавать путем использования в коде приложения метода CreateRegion. После создания области вы можете добавлять теги к объектам, вставляемым в область. Существуют перегрузки методов Add и Put, принимающие имена областей. Чтобы найти в области объекты с указанным тегом, используйте методы GetObjectsByTag, GetObjectsByAnyTag и GetObjectsByAllTags.

В Управляемая служба кэша память кэша распределяется между разными областями службы. В силу архитектурных особенностей функции поиска объекты, относящиеся к одной области, хранятся в одной области службы кэша. Если включен высокий уровень доступности, в другой области памяти службы кэша будет находиться резервная копия области. Это поведение отличается от ситуации, где области не используются. В этом случае новые элементы в кэше распределенного кэша по всем областям памяти службы кэша.

WarningПредупреждение
Так как все элементы, хранящиеся в области, должны находиться в одной области памяти службы кэша, возможно вытеснение элементов из кэша даже при достаточном объеме свободной памяти. Используйте больше областей меньшего размера, чтобы использовать преимущества областей и тегов.

В следующем примере показывается создание области Test.

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

В следующем примере показывается добавление трех объектов с тегами в область Test.

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

В следующем примере показывается поиск в области Test всех объектов с тегом Tag1.

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

См. также

Была ли вам полезна эта информация?
(1500 символов осталось)
Спасибо за ваш отзыв
Корпорация Майкрософт проводит интернет-опрос, чтобы выяснить ваше мнение о веб-сайте MSDN. Если вы желаете принять участие в этом интернет-опросе, он будет отображен при закрытии веб-сайта MSDN.

Вы хотите принять участие?
Показ:
© 2015 Microsoft