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

Высокий уровень доступности (кэш роли для кэша Azure)

Обновлено: Сентябрь 2014 г.

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

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

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

noteПримечание
Высокий уровень доступности не поддерживается для Shared Caching.

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

Чтобы реализовать возможности высокого уровня доступности, все операции записи кэша выполняются и в основную, и в дополнительную копии.

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

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

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

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

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

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

ImportantВажно!
По определению при использовании функции высокого уровня доступности объем памяти, необходимый для каждого кэшированного элемента, возрастает в два раза. Учитывайте это увеличение объема при планировании загрузки приложений. Дополнительные сведения см. в Вопросы планирования емкости для кэша роли (кэш Azure).

  1. Дважды щелкните роль с включенным Кэш в роли.

  2. На вкладке Конфигурация убедитесь, что Число экземпляров не меньше 4.

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

    Кэширование резервных копий

См. также

Показ:
© 2014 Microsoft