Рекомендации по планированию емкости для кэша In-Role Azure
Важный
Корпорация Майкрософт рекомендует использовать кэш Redis Для всех новых разработок. Текущая документация и рекомендации по выбору предложения кэша Azure см. в статье Какой вариант предложения кэша Azure подходит для меня?
Требуемая емкость кэша In-Role определяется несколькими факторами, включая объем данных для размещения в кэше, частоту и объем операций чтения и записи в кэш, а также параметры, такие как высокая доступность, для кэша. После определения требований к кэшу можно настроить топологию кэша. Топология подготовленного кластера кэша зависит от нескольких факторов, в том числе размера виртуальной машины, количества развернутых экземпляров и того, является ли роль общей или выделенной для кэширования. В этом разделе показано, как использовать электронную таблицу руководства по планированию ресурсов
Использование электронной таблицы по планированию емкости
руководства по планированию емкости
Топология развертывания кластера кэша | Описание |
---|---|
Кэширование выделенной роли |
Экземпляры рабочей роли используются исключительно для кэширования. |
Кэширование совместно расположенных ролей |
Кэш использует ресурсы виртуальной машины (пропускную способность, ЦП и память) с основным приложением, размещенным ролью. |
Если приложение имеет неиспользуемую память в существующих ролях, можно настроить кластер кэша ролей совместного расположения для этих ролей и использовать эту дополнительную память для кэширования. Если в ролях недостаточно дополнительной памяти для поддержки кластера кэша, можно масштабировать роли или добавить рабочую роль кэша и настроить кластер выделенного кэша ролей. Это руководство поможет определить параметры, используемые для топологии развертывания, которая соответствует потребностям кэширования приложения.
В следующих разделах описывается использование двух листов для планирования емкости для
Выделенная роль — планировщик
Совместно расположенная роль — планировщик
Выделенная роль — планировщик
Выделенная роль — лист планировщика принимает несколько типов входных данных. Первый раздел входных данных: требования к даннымиспользуется для вычисления максимального размера данных для кэша. Для десяти типов данных можно ввести
Второй раздел, входных данных: требования к пропускной способности, используется для вычисления требований к пропускной способности кэша и имеет входные данные число операций чтения в секунду и число операций записи/с при пиковой нагрузке. В этом примере пиковая нагрузка для типа данных 1 составляет 10 000 операций чтения в секунду и 500 операций записи в секунду.
Третий раздел, входных данных: дополнительные параметры, предоставляет несколько дополнительных параметров ввода. Сушку для пиковой нагрузки — данные и Кушион для пиковой нагрузки — пропускная способность предоставляет буфер для всплесков нагрузки приложения. Эти параметры обеспечивают удобный способ увеличения или уменьшения требуемого буфера для объема и пропускной способности данных в кэше.
сохранять данные в обновлениях Azure указывает, должна ли электронная таблица планировщика емкости включать дополнительную емкость для сценариев последовательного обновления, когда роли в домене обновления будут отключены из-за обновления. Когда Azure завершает работу ролей в домене обновления из-за обновления, In-Role кэш пытается переместить данные на другие узлы кластера, прежде чем узел переходит в автономный режим. Если в других узлах недостаточно емкости, чтобы выполнить дополнительную нагрузку, все кэшированные элементы из роли не могут быть переданы другим узлам. сохранение данных в обновлений Azure имеет значение Да по умолчанию в электронной таблице планировщика емкости. Если для нее задано значение No, то требования к емкости для роли снижаются. Если сохранить данные в обновлений Azure установлено значение Да, руководство резервирует дополнительную емкость, эквивалентную одному домену обновления емкости. Дополнительные сведения о доменах обновления см. в обзор обновленияслужбы Azure.
Заметка
Если узел исчез из-за сбоя или из-за уменьшения числа экземпляров роли из-за изменения конфигурации, кэш данных не перемещается на другие узлы. In-Role кэш перемещает данные только на другие узлы при планировании завершения работы. Высокий уровень доступности можно включить для предоставления резервных копий данных кэша в случае сбоя узла. Дополнительные сведения см. в статье высокий уровень доступности в кэше In-Role Azure.
количество доменов обновления относится к количеству доменов обновления для роли, в которую размещается кластер кэша. Вы можете разрешить электронной таблице планировщика емкости рекомендовать количество доменов обновления для кластера кэша или указать его самостоятельно. Параметр по умолчанию Set by planner. Если выбран параметр Set by planner, электронная таблица планирования емкости предоставляет рекомендацию в столбце доменов обновления в разделе "Выходные данные : возможные конфигурации". Если количество доменов обновления вручную указано в число доменов обновления, указанное число отображается в разделе выходных данных. Дополнительные сведения о доменах обновления см. в обзор обновленияслужбы Azure.
После настройки входных данных средство предоставляет предложения в разделе Выходные данные: возможные конфигурации. В этом примере рекомендуемая конфигурация — это размер средней виртуальной машины с 3 экземплярами ролей и числом доменов обновления 3. Помимо рекомендуемой конфигурации, в разделе выходные данные: возможные конфигурации отображаются необходимые параметры, если выбран один из других размеров виртуальных машин.
Если средний размер объектов в кэше меньше 2 кб, то в руководстве по планировщику емкости отображается столбец CacheDataSize (MB)* и примечание в разделе выходных данных.
Заметка
Ссылка, отображаемая в разделе выходных данных, ссылается на раздел "Рекомендации по планированию емкости", который вы читаете сейчас.
Если отображается это сообщение, создайте XML-файл в проекте роли с именем CacheSettings.xml и добавьте раздел dataCache
, включающий параметр cacheDataSize (МБ) из раздела Выходные, выполнив следующие действия.
Щелкните правой кнопкой мыши проект роли, в котором размещен кластер кэша в обозревателе решений
, и выберите добавить новый элемент . ВыберитеXML-файл в области шаблонов, введитеCacheSettings.xml в полеИмя и нажмите кнопкуДобавить .Скопируйте приведенный ниже фрагмент XML-кода и вставьте его в файл CacheSettings.xml.
<?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> <section name="dataCache" type="Microsoft.ApplicationServer.Caching.DataCacheSection, Microsoft.ApplicationServer.Caching.Core" allowLocation="true" allowDefinition="Everywhere" /> </configSections> <dataCache size="Small"> <advancedProperties> <memoryPressureMonitor cacheUserDataSizePerNode="[CacheDataSize (MB) Setting]" /> </advancedProperties> </dataCache> </configuration>
Замените
[CacheDataSize (MB) Setting]
параметром из столбца CacheDataSize (МБ), соответствующего размеру виртуальной машины. В следующем примере используется2088
.<?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> <section name="dataCache" type="Microsoft.ApplicationServer.Caching.DataCacheSection, Microsoft.ApplicationServer.Caching.Core" allowLocation="true" allowDefinition="Everywhere" /> </configSections> <dataCache size="Small"> <advancedProperties> <memoryPressureMonitor cacheUserDataSizePerNode="2088" /> </advancedProperties> </dataCache> </configuration>
Важный
Не изменяйте другие параметры в этом фрагменте кода, например атрибут
dataCache
size
. АтрибутdataCache
size
не указывает размер роли виртуальной машины, используемой для кластера кэша, и его необходимо задать дляSmall
.Этот CacheCluster.xml файл будет развернут вместе с приложением и содержит необходимую конфигурацию.
Чтобы использовать выделенную роль — планировщик лист, введите значения в разделы входных, соответствующие требованиям к кэшированию. Используйте рекомендуемые предложения в качестве отправной точки для настройки кластера кэша. Чтобы настроить выделенный кэш ролей, добавьте рабочую роль кэша в проект и настройте свойства кластера кэша. Пример настройки кластера кэша выделенных ролей см. в статье Практическое руководство. Настройка кластера кэша для кэша Azure In-Role кэша.
Совместно расположенная роль — планировщик
совместно расположенная роль — лист планировщика является вторым листом в электронной таблице руководства по планированию емкости, и она используется для определения параметров для кластера совместно расположенных ролей кэша. Кластер кэша ролей — это кластер, в котором ресурсы экземпляров ролей (память, ЦП и пропускная способность) совместно используются между кэшированием и приложением.
Чтобы использовать Co-Located роль — планировщик лист, введите конфигурацию роли в разделе Input: Cluster Configuration. В размер виртуальной машинывведите размер виртуальной машины, на котором размещена роль, и введите количество экземпляров ролей в число экземпляров виртуальных машин. Введите требуемый размер кэша в пользовательские данные, которые будут храниться вкэша, и укажите нужный параметр для включенной высокой доступности. Введите да, если вы хотите включить высокий уровень доступности или Нет, если нет. В этом примере размер виртуальной машины является средним с 3 экземплярами ролей и требуемым размером кэша в 1500 МБ без высокой доступности.
После настройки входных данных средство предоставляет рекомендации по размещению требуемого кластера кэша на существующих экземплярах ролей, а также параметр, используемый для ползунка размера кэша
Чтобы использовать совместно расположенную роль — планировщик листе, введите значения в раздел Input: Cluster Configuration, соответствующий требованиям кэширования. Используйте рекомендации в разделе выходных данных в качестве отправной точки для определения конфигурации кластера кэша.
Заметка
Нагрузка, которую может нести совместно расположенный кэш, является функцией того, сколько пропускной способности или ЦП доступно для кэширования, после учета пропускной способности и потребления ЦП основного приложения. Тестирование должно проверить производительность как кэша, так и основного приложения.
После определения конфигурации кластера кэша кластер кэша можно настроить на страницах свойств для роли. Пример настройки совместно расположенного кластера кэша ролей см. в статье How to: Configure a Cache Cluster for Azure In-Role Cache.