Параметры конфигурации клиента кэша для управляемой службы кэша Azure
Важно!
Корпорация Майкрософт рекомендует все новые разработки использовать кэш Redis для Azure. Текущая документация и рекомендации по выбору предложения кэша Azure см. в статье о том, какое предложение кэша Azure подходит для меня?
В этом разделе описываются требования для поддержки управляемая служба кэша в файле конфигурации платформа .NET Framework web.config или app.config. Она также описывает доступные параметры конфигурации для клиентов кэша.
Совет
При использовании пакета NuGet для управляемая служба кэша пакет автоматически изменяет файл конфигурации. Однако вы можете использовать данную тему для дальнейшей настройки параметров клиента кэша, которые вводит NuGet. Дополнительные сведения о пакете кэширования NuGet см. в разделе "Настройка клиента кэша" с помощью пакета кэширования NuGet.
Следующие разделы содержатся в данной теме.
<configSections>
<dataCacheClients>
<dataCacheClient>
<Автообнаружения>
<localCache>
<clientNotification>
<serializationProperties>
<securityProperties>
<cacheDiagnostics>
- <crashDump>
Пример настройки клиента кэша
В следующем примере показаны разделы файла web.config или app.config, относящиеся к управляемая служба кэша. В данном примере клиент кэша default
получает доступ к кэшу, размещенному на mycache.cache.windows.net
, и локальный кэш включен.
<configuration>
<configSections>
<section name="dataCacheClients"
type="Microsoft.ApplicationServer.Caching.DataCacheClientsSection,
Microsoft.ApplicationServer.Caching.Core"
allowLocation="true"
allowDefinition="Everywhere" />
<section name="cacheDiagnostics"
type="Microsoft.ApplicationServer.Caching.AzureCommon.DiagnosticsConfigurationSection,
Microsoft.ApplicationServer.Caching.AzureCommon"
allowLocation="true"
allowDefinition="Everywhere" />
</configSections>
<dataCacheClients>
<dataCacheClient name="default">
<!--To use the in-role flavor of Azure Caching,
set identifier to be the cache cluster role name -->
<!--To use the Azure Caching Service,
set identifier to be the endpoint of the cache cluster -->
<autoDiscover isEnabled="true" identifier="mycache.cache.windows.net" />
<localCache isEnabled="true" sync="TimeoutBased" objectCount="100000" ttlValue="300" />
<!--Use this section to specify security settings for connecting to your cache.
This section is not required if your cache is hosted on a role that is a part
of your cloud service. -->
<securityProperties mode="Message" sslEnabled="false">
<messageSecurity authorizationInfo="MyAuthorizationKey" />
</securityProperties>
</dataCacheClient>
</dataCacheClients>
<cacheDiagnostics>
<crashDump dumpLevel="Off" dumpStorageQuotaInMB="100" />
</cacheDiagnostics>
</configuration>
configSections
Следующие два именованных элемента раздела должны быть добавлены в список разделов в элементе configSections .
Имя | Описание |
---|---|
dataCacheClients |
Определяет элемент dataCacheClients файла конфигурации. Данный раздел определяет параметры для всех конфигураций клиента кэша. |
cacheDiagnostics |
Определяет элемент cacheDiagnostics файла конфигурации. В этом разделе настраивается диагностика, относясь к управляемая служба кэша. |
Следующий пример показывает, как определить эти разделы.
<section name="dataCacheClients"
type="Microsoft.ApplicationServer.Caching.DataCacheClientsSection,
Microsoft.ApplicationServer.Caching.Core"
allowLocation="true"
allowDefinition="Everywhere" />
<section name="cacheDiagnostics"
type="Microsoft.ApplicationServer.Caching.AzureCommon.DiagnosticsConfigurationSection,
Microsoft.ApplicationServer.Caching.AzureCommon"
allowLocation="true"
allowDefinition="Everywhere" />
dataCacheClients
Каждый элемент dataCacheClients содержит один или несколько именованных элементов dataCacheClient . Элемент dataCacheClients не имеет атрибутов. Возможность иметь несколько разделов настройки клиента кэша позволяет приложениям использовать разные параметры с разными данными в кэше.
dataCacheClient
Каждый элемент dataCacheClients содержит один или несколько именованных элементов dataCacheClient . Код приложения загружает параметры для клиента кэша, ссылаясь на имя связанного раздела dataCacheClient .
Элемент dataCacheClients не имеет атрибутов. Но дочерние элементы dataCacheClient имеют несколько доступных атрибутов. Эти атрибуты описаны в следующей таблице.
attribute | Описание |
---|---|
имя; |
Имя конфигурации клиента кэша. |
isCompressionEnabled |
Включает или выключает сжатие. Возможные значения: |
useConnectionPool |
Включает или выключает пул подключений. Возможное значение включает |
maxConnectionsToServer |
Если задано значение |
В следующих разделах описываются доступные дочерние элементы в каждом элементе dataCacheClient .
autoDiscover
Элемент автообнаружения помогает клиентам кэша автоматически подключаться к целевому кэшу.
В следующей таблице описаны доступные атрибуты для элемента автообнаружения .
attribute | Описание |
---|---|
isEnabled |
Установите или |
identifier |
Для управляемая служба кэша это имя конечной точки кэша. Для кэша In-Role это имя роли в том же развертывании облачной службы, где размещается кэш In-Role. |
<autoDiscover isEnabled="true" identifier="mycache.cache.windows.net" />
localCache
Элемент localCache управляет использованием локального кэша. По умолчанию локальный кэш выключен. При включении элементы, получаемые из кэша, локально хранятся в памяти на клиентской машине. Это улучшает производительность получаемых в последующем запросов, но может привести к несогласованности данных между локально хранящейся версией и актуальным элементом в кэше. Дополнительные сведения см. в разделе "Локальный кэш" для Azure управляемая служба кэша.
В следующей таблице описаны доступные атрибуты для элемента localCache .
attribute | Описание |
---|---|
isEnabled |
Задайте значение |
Синхронизации |
Определяет политику недействительности локального кэша. Возможные значения: |
objectCount |
Максимальное количество объектов в локальном кэше. Значение по умолчанию — 10000. |
ttlValue |
Время хранения объектов в локальном кэше в секундах. Значение по умолчанию — 300 секунд. |
Примечание
Уведомления поддерживаются в предложениях кэша уровня Standard и Premium, а именованные кэши в рамках этих предложений должны быть настроены на включение уведомлений. Дополнительные сведения см. в разделе "Уведомления" для Управляемая служба кэша Azure.
<localCache isEnabled="true" sync="TimeoutBased" objectCount="100000" ttlValue="300" />
clientNotification
В следующей таблице описаны доступные атрибуты для элемента clientNotification . Данный элемент отвечает за управление поведением уведомления клиента кэша.
attribute | Описание |
---|---|
pollInterval |
Число секунд между попытками опроса. Опрос используется для проверки уведомлений в кэше. Значением по умолчанию является |
maxQueueLength |
Максимальное число уведомлений, стоящих в очереди к данному клиенту кэша между попытками опроса. Значением по умолчанию является |
<clientNotification pollInterval="60" maxQueueLength="10000"/>
serializationProperties
В следующей таблице описаны доступные атрибуты для элемента serializationProperties . Данный элемент поддерживает выбор встроенной или пользовательской сериализации для элементов в кэше. Дополнительные сведения см. в статье о сериализации для Управляемая служба кэша Azure.
attribute | Описание |
---|---|
serializer |
Определяет тип сериализации элементов в кэше. Возможные значения: |
securityProperties
В следующей таблице описаны доступные атрибуты элемента securityProperties .
attribute | Описание |
---|---|
mode |
Возможными значениями являются |
sslEnabled |
Возможные значения: |
Элемент securityProperties имеет дочерний элемент messageSecurity. В следующей таблице описаны доступные атрибуты элемента messageSecurity .
attribute | Описание |
---|---|
authorizationInfo |
Ключ доступа к кэшу, который может быть получен из панели кэша в службе . Если он не настроен должным образом, клиент кэша не сможет установить обмен данными в кэше. |
<securityProperties mode="Message" sslEnabled="false">
<messageSecurity authorizationInfo="iz8zOmJ0dJBzzzzxa8JxdGJkb281bzxudGF0az9udGxzdGluZi111z8oZS5Ji28lP38jb250Pm9sLmludDMud2luZG93Pi1pb8Qubmx0L1dSQxB2MP45LiZxd25lPii0eDJJZQA5SlZQQUQ2xzIizk8iazlES1P08X8zOFIxZjdzZxp0i3lFQ2FFPSZodJRzOi8xS8JxdGJEb281bzxudGF0az9uxGxzdGluZi5jiz8oZS5pb8QzL8dpbmRxd3MQaz50Lm5ldA==" />
</securityProperties>
cacheDiagnostics
В этом разделе настраивается некоторый параметр диагностики для управляемая служба кэша.
Предупреждение
В выпуске управляемая служба кэша кэшDiagnostics и связанные разделы, описанные в этом разделе, применяются только для клиентов кэша облачных служб на основе ролей. Если ваш клиент кэша не является облачной службой, тогда данные разделы не добавляются пакетом кэша NuGet. Дополнительные сведения см. в статье о ClientDiagnosticLevel для Azure управляемая служба кэша.
В следующих разделах описываются доступные дочерние элементы в каждом элементе cacheDiagnostics .
crashDump
Элемент crashDump управляет типом аварийных дампов, собранных для этого приложения. управляемая служба кэша аварийных дампов в основном предназначены для диагностики проблем с компьютерами кэша. По этой причине файлы конфигурации клиента должны выключить создание аварийных дампов. Это можно сделать, задав для атрибута dumpLevel значение Off
.
Когда аварийные дампы включены, локальное хранилище и хранилище диагностики кэша должны быть отрегулированы в ServiceDefinition.csdef таким образом, чтобы их размер был всегда больше, чем сумма квоты аварийного хранилища и квоты хранилища журнала, настраиваемых в CacheSettings.xml (значением по умолчанию является 1000 МБ).
В следующей таблице описаны доступные атрибуты для элемента crashDump .
attribute | Описание |
---|---|
dumpLevel |
Возможными значениями являются |
dumpStorageQuotaInMB |
Верхний предел размера аварийного дампа. |
scheduledTransferPeriodInMinutes |
Число минут между передачами аварийных дампов в хранилище диагностики. |
<crashDump dumpLevel="Off" dumpStorageQuotaInMB="100" scheduledTransferPeriodInMinutes="5" />