Экспорт (0) Печать
Развернуть все

Сведения о кэше роли для кэша Azure

Обновлено: Июль 2010 г.

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

Кэш в роли поддерживает возможность размещения служб кэширование в ролях . В этой модели кэш входит в состав облачной службы. Внутри облачной службы выбирается одна роль для размещения Кэш в роли. Запущенные экземпляры этой роли объединяют ресурсы памяти и образуют кластер кэша. Частный кластер кэша доступен только ролям в рамках одного развертывания. Существует два основных варианта топологии развертывания Кэш в роли: выделенная и с совместным размещением. Совместно размещенные роли также вмещают другой код приложений и службы без кэша. Выделенные роли являются рабочими ролями, которые используются только для кэширование. Следующие темы рассматривают данные топологии кэширование более подробно.

Пошаговое руководство по службе Кэш в роли на основе ролей см. в разделе Использование кэширования Azure. Загружаемые примеры смотрите в разделе Примеры кэша роли (кэш Azure).

В данном разделе представлены общие сведения о трех ключевых концепциях службы Кэш в роли на основе ролей.

  1. Кластер кэша

  2. Именованные кэши

  3. Клиенты кэша

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

noteПримечание
Только один кластер кэша поддерживается для каждой облачной службы. Можно установить несколько кластеров кэша в облачную службу, определив отдельные учетные записи хранения для каждой роли. Однако данная конфигурация не поддерживается.

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

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

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

Каждый кластер кэша содержит совместно используемую информацию о состоянии кластера в хранилище . Во время разработки вы можете использовать эмулятор хранения . Развернутые роли должны определить допустимую учетную запись хранения . В Visual Studio вы можете определить соответствующую учетную запись хранения на вкладке Кэширование параметров роли.

Каждый кластер кэша имеет хотя бы один кэш с именем default. Со службой Кэш в роли на основе роли вы также можете добавить дополнительные именованные кэши. Существуют различные параметры, которые могут быть изменены для каждого кэша. Следующий снимок экрана демонстрирует раздел Параметры именованного кэша на вкладке Кэширование в параметрах роли Visual Studio.

Свойства кэширования для именованных кэшей

В Visual Studio щелкните Добавить именованный кэш и добавьте дополнительный именованный кэш. В предыдущем примере были добавлены два дополнительных кэша, NamedCache1 и NamedCache2. Каждый кэш имеет разные параметры. Измените параметры, выбрав и изменив определенные поля в таблице.

Именованные кэши обеспечивают гибкость разработчикам приложений. Каждый именованный кэш обладает своими собственными свойствами. Например, один кэш может включить Высокий уровень доступности для получения соответствующих преимуществ. Другим кэшам, возможно, не требуется данный параметр, так как высокий уровень доступности требует двойной объем памяти для каждого элемента в кэше. Лучшим использованием ресурсов является использование высокого уровня доступности только в кэшах, которым это необходимо. Существуют другие похожие сценарии, в которых многие кэши могут использоваться с различными свойствами для соответствия требованиям приложения.

Клиент кэша — это код приложения, который хранит и извлекает элементы из кластера кэша. В службе Кэш в роли на основе ролей клиенты кэша должны быть частью одной и той же роли службы кэширование или должны быть включены в другие роли в развертывании. Настройте клиенты кэша, используя файлы конфигурации в приложении или в сети. Дополнительные сведения см. в Инструкции Подготовка Visual Studio к использованию кэша роли (кэш Azure). Следующий пример демонстрирует элемент dataCacheClient в файле конфигурации.

<dataCacheClients>
  <dataCacheClient name="default">
    <autoDiscover isEnabled="true" identifier="CachingRole1" />
    <!--<localCache isEnabled="true" sync="TimeoutBased" objectCount="100000" ttlValue="300" />-->
  </dataCacheClient>
</dataCacheClients>

В предыдущем примере элемент autoDiscover имеет атрибут identifier, установленный как CachingRole1. Данный идентификатор означает, что служба CachingRole1 включила службу Кэш в роли. Это указывает расположение сервера кэша. Клиент кэша использует CachingRole1 автоматически в любых операциях кэширование.

После настройки клиент кэша может получить доступ к любому кэшу по имени. Следующий пример получает доступ к кэшу NamedCache1 и добавляет в него элемент.

DataCache cache = new DataCache("NamedCache1", "default");
cache.Put("testkey", "testobject");

Конструктор DataCache принимает два параметра: имя кэша и имя раздела dataCacheClient. Информацию относительно имени кэша смотрите в предыдущем разделе Именованные кэши.

См. также

Основные понятия

Кэш

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

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