Vorgehensweise: Konfigurieren des AppFabric-Ausgabecacheanbieters für ASP.NET (AppFabric 1.1-Cache)
In diesem Thema wird erläutert, wie eine ASP.NET-Webanwendung so konfiguriert wird, dass sie einen bereitgestellten AppFabric-Cache als Ausgabecache verwendet. Die Konfiguration erfolgt durch Ändern der Datei web.config für die Zielwebanwendung.
Verwenden von Microsoft AppFabric 1.1 für Windows Server-Cache für den Ausgabecache
Damit Ihre ASP.NET-Webanwendung den AppFabric-Ausgabecacheanbieter verwenden kann, müssen Sie der Datei web.config Ihrer Anwendung die folgenden Elemente hinzufügen:
configSections
: Dieses Element muss das erste Element in der Konfigurationsdatei unter dem öffnenden Tagconfiguration
sein. Es ist erforderlich, damit die AppFabric-Cache-Assemblys funktionieren.dataCacheClients
: Dieses Element ist ein untergeordnetes Element des Konfigurationselements. Es wird zum Speichern derdataCacheClient
-Elemente verwendet, die Cacheclients konfigurieren und die Cachehosts angeben.caching
: Dieses Element ist ein untergeordnetes Element des Elementssystem.web
. Es enthält einoutputCache
-Element, das die Webanwendung anweist, Microsoft AppFabric 1.1 für Windows Server zum Verwalten der Ausgabecachedaten zu verwenden. Das AttributcacheName
gibt den benannten Cache an, der verwendet wird. Das AttributdataCacheClientName
gibt an, welcher AbschnittdataCacheClient
für die Cachekonfiguration verwendet wird.
Warnung
Es wird dringend empfohlen, die zum Angeben der Namen der Cachehosts verwendete Datei web.config zu sichern.
Verwenden von Microsoft AppFabric 1.1 für Windows Server für den Ausgabecache
Bereiten Sie zuerst Ihr Visual Studio 2010-Projekt so vor, dass Microsoft AppFabric 1.1 für Windows Server-Cache verwendet wird. Weitere Informationen finden Sie unter Vorbereiten der Cacheclient-Entwicklungsumgebung (AppFabric 1.1-Cache).
Verweisen Sie nicht nur auf die normalen Cacheassemblys, sondern auch auf die Assembly Microsoft.Web.DistributedCache.dll im Microsoft AppFabric 1.1 für Windows Server-Cache-Installationspfad.
Kopieren Sie das Element
configSections
aus dem Beispiel unten in Ihre Datei web.config. Stellen Sie sicher, dass dieses Element das erste Element innerhalb derconfiguration
-Tags ist.Kopieren Sie das Element
dataCacheClients
aus dem Beispiel unten in Ihre Datei web.config. Es sollte hinter dem ElementconfigSections
innerhalb des Elementsconfiguration
hinzugefügt werden.- Konfigurieren Sie die Attribute
name
undcachePort
der Hostelemente so, dass sie den Cacheservern in Ihrer Umgebung entsprechen. Fügen Sie Hostelemente nach Bedarf hinzu, oder entfernen Sie diese.
- Konfigurieren Sie die Attribute
Kopieren Sie das Element
caching
aus dem Beispiel unten in Ihre Datei web.config. Es sollte innerhalb des Elementssystem.web
positioniert werden. Geben Sie die AttributecacheName
unddataCacheClientName
sowie alle weiteren erforderlichen Einstellungen an.Bestimmen Sie die Identität der Webanwendung. Dies kann in IIS-Manager auf den Webservern erfolgen. Ermitteln Sie die Identität des Anwendungspools, der der Webanwendung zugeordnet ist. Erteilen Sie diesem Benutzer mithilfe des Windows PowerShell-Befehls
Grant-CacheAllowedClientAccount
Zugriff auf den Cachecluster.Tipp
Wenn der Anwendungspool als integriertes Computerkonto, z. B. als NT-AUTORITÄT\Netzwerkdienst, ausgeführt wird, sollte dem betreffenden Computer Zugriff auf den Cachecluster erteilt werden. Sie können zu diesem Zweck DOMAENENNAME\COMPUTERNAME$ als Konto angeben. Beachten Sie, dass „$“ an den Computernamen angefügt wird, um anzugeben, dass es sich um das Computerkonto handelt.
Beispiel
Dieses Beispiel zeigt, wie eine ASP.NET-Webanwendung für das Speichern von Ausgabecachedaten in einem verteilten Cache namens default
konfiguriert wird. Der Cacheclient in diesem Beispiel ist nur zum Kommunizieren mit einem Cachehost mit dem Namen CacheServer1
konfiguriert.
Fügen Sie der Datei web.config zuerst das Element
configSections
als erstes Element im Elementconfiguration
hinzu:<!--configSections must be the FIRST element --> <configSections> <section name="dataCacheClients" type="Microsoft.ApplicationServer.Caching.DataCacheClientsSection, Microsoft.ApplicationServer.Caching.Core" allowLocation="true" allowDefinition="Everywhere"/> </configSections>
Fügen Sie dann das einzelne Element
dataCacheClients
hinzu, das mindestens ein ElementdataCacheClient
enthält. Fügen Sie diese Angaben der Datei web.config hinter dem ElementconfigSections
hinzu. Auf diese Weise konfigurieren Sie den Cacheclient so, dass die Anforderungen Ihrer Anwendung erfüllt werden. Weitere Informationen finden Sie unter Anwendungskonfigurationseinstellungen (AppFabric 1.1-Cache).<dataCacheClients> <dataCacheClient name="default"> <hosts> <host name="CacheServer1" cachePort="22233" /> </hosts> </dataCacheClient> </dataCacheClients>
Nachdem die Elemente
configSections
unddataCacheClients
hinzugefügt wurden, fügen Sie der Datei web.config das Elementcaching
innerhalb des Elementssystem.web
hinzu. Auf diese Weise geben Sie an, welcher Cache von der Webanwendung zum Speichern von Ausgabecachedaten verwendet wird. Passen Sie die AttributecacheName
unddataCacheClientName
sowie alle weiteren erforderlichen Einstellungen an.<caching> <outputCache defaultProvider="DistributedCache"> <providers> <add name="DistributedCache" type="Microsoft.Web.DistributedCache.DistributedCacheOutputCacheProvider, Microsoft.Web.DistributedCache" cacheName="default" dataCacheClientName="default" /> </providers> </outputCache> </caching>
Nach der Fertigstellung ähnelt die endgültige Datei web.config der Webanwendung dem folgenden Beispiel.
<?xml version="1.0"?>
<configuration>
<configSections>
<section name="dataCacheClients"
type="Microsoft.ApplicationServer.Caching.DataCacheClientsSection, Microsoft.ApplicationServer.Caching.Core"
allowLocation="true" allowDefinition="Everywhere"/>
</configSections>
<dataCacheClients>
<dataCacheClient name="default" channelOpenTimeout="10000">
<hosts>
<host name="CacheServer1" cachePort="22233" />
</hosts>
</dataCacheClient>
</dataCacheClients>
<system.web>
<caching>
<outputCache defaultProvider="DistributedCache">
<providers>
<add name="DistributedCache"
type="Microsoft.Web.DistributedCache.DistributedCacheOutputCacheProvider, Microsoft.Web.DistributedCache"
cacheName="default"
dataCacheClientName="default" />
</providers>
</outputCache>
</caching>
</system.web>
</configuration>
Siehe auch
Konzepte
Ausgabecacheanbieter (AppFabric 1.1-Cache)
2012-03-05