Konfigurationseinstellungen des Rollencaches ("ServiceConfiguration.cscfg")
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 verfügbaren Microsoft Azure Cacheeinstellungen in der Datei ServiceConfiguration.cscfg beschrieben. Diese Einstellungen geben die Konfiguration des Zwischenspeicherns für die Zielrolle an. Das Dialogfeld "Rolleneigenschaften" in Visual Studio konfiguriert diese Einstellungen automatisch, wenn Sie das Zwischenspeichern aktivieren. Die Referenzinformationen in diesem Thema sind am nützlichsten für nicht Visual Studio Clouddienstbereitstellungen, die das Zwischenspeichern nutzen möchten.
ServiceConfiguration.cscfg
Das folgende Beispiel zeigt eine grundlegende ServiceConfiguration.cscfg-Datei, die das Zwischenspeichern konfiguriert hat. Dieses Beispiel verwendet zwei benannte Caches: default
und NamedCache1
. Dieses Beispiel illustriert die folgenden Referenzabschnitte.
<?xml version="1.0" encoding="utf-8"?>
<ServiceConfiguration serviceName="WindowsAzure1" xmlns="https://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" osFamily="3" osVersion="*" schemaVersion="2012-10.1.8">
<Role name="WebRole1">
<Instances count="2" />
<ConfigurationSettings>
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" />
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.NamedCaches" value="{"caches":[{"name":"default","policy":{"eviction":{"type":0},"expiration":{"defaultTTL":10,"isExpirable":true,"type":1},"serverNotification":{"isEnabled":false}},"secondaries":0},{"name":"NamedCache1","policy":{"eviction":{"type":-1},"expiration":{"defaultTTL":20,"isExpirable":true,"type":2},"serverNotification":{"isEnabled":true}},"secondaries":1}]}" />
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.ClientDiagnosticLevel" value="1" />
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.DiagnosticLevel" value="1" />
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.CacheSizePercentage" value="30" />
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.ConfigStoreConnectionString" value="UseDevelopmentStorage=true" />
</ConfigurationSettings>
</Role>
</ServiceConfiguration>
NamedCaches
Die Einstellung Microsoft.WindowsAzure.Plugins.Caching.NamedCaches gibt alle Caches und ihre Konfigurationseinstellungen an. Diese Informationen werden mithilfe von JSON-Syntax organisiert. Die doppelten Anführungszeichen in der Syntax werden mithilfe des "
-Zeichenentitätsverweises durch Escape geschützt. Der folgende Wert NamedCaches wurde der oben aufgeführten vollständigen Datei ServiceConfiguration.cscfg entnommen.
{"caches":[{"name":"default","policy":{"eviction":{"type":0},"expiration":{"defaultTTL":10,"isExpirable":true,"type":1},"serverNotification":{"isEnabled":false}},"secondaries":0},{"name":"NamedCache1","policy":{"eviction":{"type":-1},"expiration":{"defaultTTL":20,"isExpirable":true,"type":2},"serverNotification":{"isEnabled":true}},"secondaries":1}]}
Das folgende Beispiel zeigt die gleichen Einstellungen aus dem vorherigen Beispiel. Die Ausgabe ist jedoch formatiert, und die "
-Symbole wurden durch doppelte Anführungszeichen ersetzt. Dies dient dem besseren Verständnis der Syntax und sollte nicht in der Datei ServiceConfiguration.cscfg verwendet werden.
{
"caches": [
{
"name": "default",
"policy": {
"eviction": {"type": 0},
"expiration": {"defaultTTL": 10, "isExpirable": true, "type": 1},
"serverNotification": {"isEnabled": false}
},
"secondaries": 0
},
{
"name": "NamedCache1",
"policy": {
"eviction": {"type": -1},
"expiration": {"defaultTTL": 20, "isExpirable": true, "type": 2},
"serverNotification": {"isEnabled": true}
},
"secondaries": 1
}
]
}
Alle benannten Caches werden innerhalb eines Cachefelds auf oberster Ebene definiert. Jeder benannte Cache wird durch die folgenden drei Felder definiert.
Feld "Caches" | BESCHREIBUNG |
---|---|
name |
Gibt den Namen des Caches an. |
Richtlinie |
Eine Richtlinie für Entfernungs-, Ablauf- und Benachrichtigungseinstellungen. |
Secondaries |
Definiert die Anzahl der Sicherungskopien, die für Hochverfügbarkeit verwaltet werden. Zurzeit muss der Wert |
Das Richtlinienfeld besteht aus den folgenden Eigenschaften.
Feld "Policy" | BESCHREIBUNG |
---|---|
Räumung |
Enthält ein einzelnes Feld, typ, das den Typ der Auslassung angibt. Mögliche Werte sind |
expiration |
Enthält drei Felder, die die Ablaufrichtlinie beschreiben.
Wichtig Der Typ ist auf |
serverNotification |
Enthält ein einzelnes Feld, isEnabled, das angibt, ob Benachrichtigungen für diesen Cache aktiviert sind. |
ClientDiagnosticLevel
Gibt die anfängliche Ebene der Diagnosesammlung zum Zwischenspeichern an. Diese Einstellung ist für Diagnoseinformationen für Rollen spezifisch, die Clients eines Caches sind. Diese Einstellung stellt Diagnoseinformationen zur Verwendung des Caches aus der Sicht des Clients bereit. Beachten Sie, dass es in der zusammengestellten Topologie möglich ist, ClientDiagnosticLevel und DiagnosticLevel in der gleichen Rollenkonfiguration gemeinsam zu verwenden.
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.ClientDiagnosticLevel" value="1" />
DiagnosticLevel
Gibt die anfängliche Ebene der Diagnosesammlung zum Zwischenspeichern an. Diese Einstellung ist spezifisch für Diagnoseinformationen zu den Rollen, die das Zwischenspeichern hosten.
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.DiagnosticLevel" value="1" />
CacheSizePercentage
Der Prozentsatz des verfügbaren Arbeitsspeichers, der zum Zwischenspeichern verwendet werden soll. In zusammengestellten Topologien sollte es sich dabei um eine ganze Zahl ohne Prozentzeichen handeln, z. B. 30
.
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.CacheSizePercentage" value="30" />
Für dedizierte Topologien sollte es sich um eine leere Zeichenfolge handeln.
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.CacheSizePercentage" value="" />
ConfigStoreConnectionString
Das Azure-Speicherkonto, das zum Zwischenspeichern verwendet werden soll. Dieser Speicher wird zum Speichern von Konfigurationsdaten zum Cachecluster verwenden. Auf ihn kann von allen virtuellen Computern zugegriffen werden, aus denen der Cachecluster besteht. Beachten Sie, dass das folgende Beispiel den Entwicklerspeicher für lokales Debuggen verwendet. Vor der Bereitstellung in der Cloud sollten Sie diesen Speicher in ein tatsächliches Speicherkonto ändern.
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.ConfigStoreConnectionString" value="UseDevelopmentStorage=true" />