Konfigurationseinstellungen für den Rollencacheclient ("Web.config")
Wichtig
Microsoft empfiehlt, alle neuen Entwicklungen azure Redis Cache zu verwenden. Aktuelle Dokumentation und Anleitung zum Auswählen eines Azure Cache-Angebots finden Sie unter Welches Azure Cache-Angebot ist für mich geeignet?
In diesem Thema werden die Anforderungen für die Unterstützung von In-Role Cache in einer .NET Framework web.config- oder app.config Konfigurationsdatei beschrieben. Außerdem werden die verfügbaren Konfigurationsoptionen für Cacheclients beschrieben. Die in diesem Thema beschriebenen Einstellungen sind nur von Cacheclients erforderlich; sie sind nicht für Rollen erforderlich, die In-Role Cache hosten.
Tipp
Wenn Sie das NuGet-Paket für In-Role Cache verwenden, ändert das Paket automatisch die Konfigurationsdatei. Sie können dieses Thema jedoch verwenden, um In-Role Cacheclients ohne Die Verwendung von NutGet zu konfigurieren. Sie können diese Informationen auch verwenden, um die Cacheclienteinstellungen, die NuGet einfügt, weiter anzupassen.
Die folgenden Abschnitte werden in diesem Thema behandelt.
<configSections>
<dataCacheClients>
<dataCacheClient>
<Autoermittlung>
<localCache>
<clientNotification>
<serializationProperties>
<cacheDiagnostics>
- <crashDump>
Cacheclient-Konfigurationsbeispiel
Das folgende Beispiel zeigt die Abschnitte einer web.config- oder app.config-Datei, die für In-Role Cache relevant sind. In diesem Beispiel greift der default
-Cacheclient auf die Caches zu, die von der CacheWorkerRole1
-Rolle gehostet werden, und der lokale Cache ist aktiviert.
<?xml version="1.0" encoding="utf-8"?>
<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">
<autoDiscover isEnabled="true" identifier="CacheWorkerRole1" />
<localCache isEnabled="true" sync="TimeoutBased" objectCount="100000" ttlValue="300" />
</dataCacheClient>
</dataCacheClients>
<cacheDiagnostics>
<crashDump dumpLevel="Off" dumpStorageQuotaInMB="100" />
</cacheDiagnostics>
</configuration>
configSections
Die folgenden beiden benannten Abschnittselemente sollten der Liste der Abschnitte im configSections-Element hinzugefügt werden.
Name | BESCHREIBUNG |
---|---|
dataCacheClients |
Definiert das dataCacheClients-Element der Konfigurationsdatei. Dieser Abschnitt gibt die Einstellungen für alle Cacheclientkonfigurationen an. |
cacheDiagnostics |
Definiert das cacheDiagnostics-Element der Konfigurationsdatei. |
Im folgenden Beispiel wird gezeigt, wie diese Abschnitte definiert werden.
<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
Jedes dataCacheClients-Element enthält ein oder mehrere benannte DataCacheClient-Elemente . Das dataCacheClients-Element verfügt nicht über Attribute. Durch die Möglichkeit, mehrere Cacheclient-Konfigurationsabschnitte zu verwenden, können Anwendungen verschiedene Einstellungen mit verschiedenen Arten von zwischengespeicherten Daten verwenden.
dataCacheClient
Jedes dataCacheClients-Element enthält ein oder mehrere benannte DataCacheClient-Elemente . Der Anwendungscode lädt die Einstellungen für einen Cacheclient, indem er auf den Namen des zugehörigen DataCacheClient-Abschnitts verweist.
Das dataCacheClients-Element verfügt nicht über Attribute. Die untergeordneten DataCacheClient-Elemente weisen jedoch mehrere verfügbare Attribute auf. Eine Beschreibung dieser Attribute finden Sie in der folgenden Tabelle.
attribute | BESCHREIBUNG |
---|---|
Name |
Der Name der Cacheclientkonfiguration. |
isCompressionEnabled |
Aktiviert oder deaktiviert Komprimierung. Zulässige Werte: |
useConnectionPool |
Aktiviert oder deaktiviert den Verbindungspool. Mögliche Werte sind |
maxConnectionsToServer |
Wenn useConnectionPool auf festgelegt |
In den folgenden Abschnitten werden die verfügbaren untergeordneten Elemente in jedem dataCacheClient-Element beschrieben.
autoDiscover
Das AutoDiscover-Element unterstützt Cacheclients bei der automatischen Verbindung mit einem Zielcachecluster. Dieser Cachecluster muss von einer Rolle in der gleichen Cloud Service-Bereitstellung gehostet werden.
In der folgenden Tabelle werden die verfügbaren Attribute für das AutoDiscover-Element beschrieben.
attribute | BESCHREIBUNG |
---|---|
isEnabled |
Legen Sie die lokale automatische Verbindung mit |
identifier |
Der Name der Rolle in derselben Clouddienstbereitstellung, die In-Role Cache hostt. |
<autoDiscover isEnabled="true" identifier="CacheWorkerRole1" />
localCache
Das localCache-Element steuert die Verwendung des lokalen Caches. Standardmäßig ist der lokale Cache nicht aktiviert. Wenn er aktiviert ist, werden aus dem Cachecluster abgerufene Elemente lokal im Arbeitsspeicher auf dem Clientcomputer gespeichert. Auf diese Weise wird die Leistung nachfolgender Get-Anforderungen verbessert. Das Ergebnis kann jedoch eine Inkonsistenz der Daten zwischen der lokal zwischengespeicherten Version und dem tatsächlichen Element im Cachecluster sein. Weitere Informationen finden Sie unter "Lokaler Cache" in Azure In-Role Cache.
In der folgenden Tabelle werden die verfügbaren Attribute für das localCache-Element beschrieben.
attribute | BESCHREIBUNG |
---|---|
isEnabled |
Wird auf |
sync |
Legt fest, wie der lokale Cache invalidiert wird. Mögliche Werte sind |
objectCount |
Die maximale Anzahl von Objekten, die im lokalen Cache gespeichert werden können. Standard: 10000 |
ttlValue |
Die maximale Anzahl von Sekunden, die Objekte im lokalen Cache verbleiben. Der Standardwert ist 300 Sekunden. |
Hinweis
Benachrichtigungen sind ein In-Role Cachefeature, das nur in Caches unterstützt wird, die in Azure-Rollen gehostet werden. Diese Caches müssen für die Aktivierung von Benachrichtigungen konfiguriert sein.
<localCache isEnabled="true" sync="TimeoutBased" objectCount="100000" ttlValue="300" />
clientNotification
In der folgenden Tabelle werden die verfügbaren Attribute für das clientNotification-Element beschrieben. Dieses Element steuert das Benachrichtigungsverhalten für den Cacheclient.
attribute | BESCHREIBUNG |
---|---|
pollInterval |
Die Anzahl von Sekunden zwischen den Abrufversuchen. Der Abrufvorgang wird verwendet, um das Vorhandensein von Benachrichtigungen auf dem Cachecluster zu überprüfen. Der Standardwert beträgt |
maxQueueLength |
Die maximale Anzahl von Benachrichtigungen, die zwischen Abrufversuchen für diesen Cacheclient in Warteschlangen gespeichert werden. Der Standardwert beträgt |
<clientNotification pollInterval="60" maxQueueLength="10000"/>
serializationProperties
In der folgenden Tabelle werden die verfügbaren Attribute für das SerializationProperties-Element beschrieben. Dieses Element unterstützt die Wahl zwischen integrierter und benutzerdefinierter Serialisierung für zwischengespeicherte Elemente. Weitere Informationen finden Sie unter Serialisierung in Azure In-Role Cache.
attribute | BESCHREIBUNG |
---|---|
serializer |
Bestimmt den Serialisierungstyp für zwischengespeicherte Elemente. Mögliche Werte sind |
cacheDiagnostics
In diesem Abschnitt werden einige der Diagnoseeinstellungen für In-Role Cache konfiguriert. Weitere Informationen zur Diagnose finden Sie unter Azure In-Role Cache-Problembehandlung und Diagnose.
In den folgenden Abschnitten werden die verfügbaren untergeordneten Elemente in jedem cacheDiagnostics-Element beschrieben.
crashDump
Das crashDump-Element steuert den Typ der Absturzabbilder, die für diese Anwendung gesammelt werden. In-Role Absturzabbilder des Caches sind hauptsächlich für die Diagnose von Problemen mit Cacheclustercomputern ausgelegt. Aus diesem Grund sollten Clientkonfigurationsdateien die Generierung von Absturzabbildern deaktivieren. Dies kann durch Festlegen des DumpLevel-AttributsOff
auf .
Wenn Absturzabbilder aktiviert sind, sollten der lokale Cachespeicher und der Diagnosespeicher in ServiceDefinition.csdef so angepasst werden, dass die Größe immer die Summe des Absturzspeicherkontingents und des Protokollspeicherkontingents übersteigt, die in CacheSettings.xml konfiguriert ist (die Standardwerte sind 1.000 MB).
In der folgenden Tabelle werden die verfügbaren Attribute für das CrashDump-Element beschrieben.
attribute | BESCHREIBUNG |
---|---|
dumpLevel |
Mögliche Werte sind |
dumpStorageQuotaInMB |
Die maximale Speichermenge, die für Absturzabbilder reserviert werden soll. |
scheduledTransferPeriodInMinutes |
Die Anzahl der Minuten zwischen Übertragungen der Absturzabbilder an den Diagnosespeicher. |
<crashDump dumpLevel="Off" dumpStorageQuotaInMB="100" scheduledTransferPeriodInMinutes="5" />