Konfigurace zprostředkovatele stavu relace rozhraní ASP.NET (ukládání do mezipaměti technologie Windows Server AppFabric)
Technologie Windows Server AppFabric poskytuje vlastního zprostředkovatele stavu relace pro aplikace rozhraní ASP.NET. Díky tomu mohou webové aplikace rozšiřovat objekty relací po celém clusteru mezipamětí a zajišťovat tak škálovatelnost. Vzhledem k povaze funkcí technologie AppFabric pro ukládání do mezipaměti musí objekty, které vkládáte do Relace, umožňovat serializaci.
V postupech tohoto tématu se předpokládá, že jste již připravili vývojové prostředí webové aplikace, nastavili odkazy na sestavení ukládání do mezipaměti technologie AppFabric a podobně. Další informace naleznete v tématu Příprava vývojového prostředí pro vývoj klienta mezipaměti (ukládání do mezipaměti technologie Windows Server AppFabric).
Aby webová aplikace rozhraní ASP.NET mohla používat zprostředkovatele stavu relace technologie AppFabric, je nutné do souboru web.config této aplikace přidat následující elementy:
configSections
: Tento element musí být prvním elementem v konfiguračním souboru pod úvodní značkouconfiguration
. Tento element je vyžadován pro fungování sestavení ukládání do mezipaměti technologie AppFabric.dataCacheClient
: Tento element je podřízeným elementem elementu configuration. Slouží ke konfiguraci klienta mezipaměti a k určení hostitelů mezipaměti. Další informace o klientovi mezipaměti naleznete v tématu Vývoj klienta mezipaměti (ukládání do mezipaměti technologie Windows Server AppFabric).sessionState
: Tento element je podřízeným elementem elementu system.web. Určuje webové aplikaci, že by měla ke správě stavů relace používat technologii AppFabric. AtributcacheName
udává pojmenovanou mezipaměť, která bude použita. Pokud data relace ukládáte do oblasti mezipaměti, použijte k zadání této oblasti atributregionName
.
Poznámka
Objekty uložené v regionu nebudou předmětem vyrovnávání zatížení mezi hostiteli mezipaměti, ale budou umístěny v hostiteli mezipaměti, ve kterém byla oblast vytvořena. Z tohoto důvodu se nejedná o obecně doporučovanou konfiguraci. Oblasti by se měly používat pouze v případě, kdy existuje zvláštní požadavek na umístění všech objektů relace v jednom hostiteli.
Upozornění
Doporučujeme, abyste soubor web.config sloužící k určení názvů hostitelů mezipaměti zabezpečili.
Konfigurace zprostředkovatele stavu relace technologie AppFabric pro webovou aplikaci
Zkopírujte element
configSections
z příkladu za tímto postupem do svého souboru web.config. Tento element musí být prvním elementem uvnitř značekconfiguration
.Zkopírujte element
dataCacheClient
z příkladu za tímto postupem do svého souboru web.config. Měl by být přidán za elementconfigSections
uvnitř elementuconfiguration
.- Nakonfigurujte atributy
name
acachePort
elementů hostitele tak, aby odpovídaly serverům mezipaměti ve vašem prostředí. Podle potřeby přidejte nebo odeberte elementy hostitele.
- Nakonfigurujte atributy
Zkopírujte element
sessionState
z příkladu za tímto postupem do svého souboru web.config. Měl by být umístěn uvnitř elementusystem.web
.Zjistěte identitu webové aplikace. To lze provést ve Správci služby IIS na webových serverech. Vyhledejte identitu fondu aplikací přidruženého k webové aplikaci. Pomocí příkazu prostředí Windows Powershell
Grant-CacheAllowedClientAccount
udělte přístup uživateli ke clusteru mezipamětí.Tip
Pokud je fond aplikací spuštěn jako předdefinovaný účet počítače, například „NT Authority\Network Service“, potom byste měli udělit přístup ke clusteru mezipamětí danému počítači. To lze provést určením účtu jako NÁZEVDOMÉNY\NÁZEVPOČÍTAČE$. Znak $ je připojen k názvu počítače, aby označoval, že se jedná o účet počítače.
Příklad
Tento příklad znázorňuje, jak lze u webové aplikace rozhraní ASP.NET nakonfigurovat použití klienta mezipaměti k ukládání dat relace do distribuované mezipaměti s názvem NamedCache1
. Klient mezipaměti v tomto příkladu je nakonfigurován tak, aby komunikoval pouze s jedním hostitelem mezipaměti s názvem CacheServer1
.
Nejdříve přidejte element configSections
do souboru web.config tak, aby se jednalo o první element v elementu configuration
:
<!--configSections must be the FIRST element -->
<configSections>
<!-- required to read the <dataCacheClient> element -->
<section name="dataCacheClient"
type="Microsoft.ApplicationServer.Caching.DataCacheClientSection,
Microsoft.ApplicationServer.Caching.Core, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35"
allowLocation="true"
allowDefinition="Everywhere"/>
</configSections>
Poté do souboru web.config přidejte za element configSections
element dataCacheClient
. Zde se provádí konfigurace klienta mezipaměti pro potřeby aplikace. Další informace naleznete v tématu Nastavení konfigurace aplikace (ukládání do mezipaměti technologie Windows Server AppFabric).
<!-- cache client -->
<dataCacheClient>
<!-- cache host(s) -->
<hosts>
<host
name="CacheServer1"
cachePort="22233"/>
</hosts>
</dataCacheClient>
Po přidání elementů configSections
a dataCacheClient
přidejte dovnitř elementu system.web
v souboru web.config element sessionState
. Zde se určuje, kterou mezipaměť bude webová aplikace používat pro ukládání dat o stavu relace.
Pokud několik webových aplikací potřebuje sdílet stejný stav relace, měly by používat stejnou hodnotu atributu sharedId
. V ostatních případech není nutné atribut sharedId
zadávat.
<sessionState mode="Custom" customProvider="AppFabricCacheSessionStoreProvider">
<providers>
<!-- specify the named cache for session data -->
<add
name="AppFabricCacheSessionStoreProvider"
type="Microsoft.ApplicationServer.Caching.DataCacheSessionStoreProvider"
cacheName="NamedCache1"
sharedId="SharedApp"/>
</providers>
</sessionState>
Po dokončení by měl finální soubor web.config webové aplikace vypadat podobně jako v následujícím příkladu.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<!--configSections must be the FIRST element -->
<configSections>
<!-- required to read the <dataCacheClient> element -->
<section name="dataCacheClient"
type="Microsoft.ApplicationServer.Caching.DataCacheClientSection,
Microsoft.ApplicationServer.Caching.Core, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35"
allowLocation="true"
allowDefinition="Everywhere"/>
</configSections>
<!-- cache client -->
<dataCacheClient>
<!-- cache host(s) -->
<hosts>
<host
name="CacheServer1"
cachePort="22233"/>
</hosts>
</dataCacheClient>
<system.web>
<sessionState mode="Custom" customProvider="AppFabricCacheSessionStoreProvider">
<providers>
<!-- specify the named cache for session data -->
<add
name="AppFabricCacheSessionStoreProvider"
type="Microsoft.ApplicationServer.Caching.DataCacheSessionStoreProvider"
cacheName="NamedCache1"
sharedId="SharedApp"/>
</providers>
</sessionState>
</system.web>
</configuration>
Další odkazy
Koncepty
Začínáme s klientem mezipaměti technologie Windows Server AppFabric (XML)
Používání metod konfigurace (ukládání do mezipaměti technologie Windows Server AppFabric)
Koncepce ukládání do mezipaměti technologie Windows Server AppFabric
Vývoj klienta mezipaměti (ukládání do mezipaměti technologie Windows Server AppFabric)
2011-12-05