ASP.NET 4 缓存会话状态提供程序的配置设置(AppFabric 1.1 缓存)

本主题将介绍用于 ASP.NET 的 AppFabric 会话状态提供程序的配置设置。web.config 文件中 sessionState 元素的 providers 部分中指定了这些设置。

会话状态配置设置

属性 描述

name(必需)

sessionState 元素所引用的提供程序的“友好”名称。

type(必需)

该提供程序的 .NET Framework 类型的字符串。此属性应设置为 “Microsoft.Web.DistributedCache.DistributedCacheSessionStateStoreProvider, Microsoft.Web.DistributedCache”

cacheName(必需)

AppFabric 缓存的名称。

dataCacheClientName(可选)

dataCacheClients 配置部分中要使用的 dataCacheClient 部分的名称。仅当 web.config 文件中指定了多个 dataCacheClient 部分时才需要此属性。默认情况下,提供程序将使用名为 “default”dataCacheClient 部分。

applicationName(可选)

提供程序在创建用于存储会话状态数据的缓存密钥时使用的字符串值。未设置此属性时,会话状态仅在同一 Web 应用程序的不同物理实例之间共享(但要求每个应用程序实例安装在相同的 IIS 元数据库路径下)。有关详细信息,请参阅 https://support.microsoft.com/kb/325056。设置了此属性后,会话状态将在所有使用相同 applicationName 值的 Web 应用程序之间共享。

useBlobMode(可选)

布尔值,该值指定是否将会话状态数据作为单个序列化的 BLOB 进行加载和存储。默认为 true。当设置为 false 时,提供程序会将会话状态数据作为单独的密钥对进行加载和存储。

nonInlinedAdditionalLifetime(可选)

提供程序跟踪下一个时间点所用的时间跨度,在该时间点,为了使项目保持“活动”而需要触及单独的(非内嵌)会话状态项目。仅当将 useBlobMode 设置为 false 时才使用此值。默认值为配置会话状态超时值的 50%(以分钟为单位)。此值所使用的字符串格式为 "HH:MM:SS"。例如,十分钟应为 "00:10:00"。可减小此值,以缩短与过期会话有关的项目在缓存中保留的时长。

retryInterval(可选)

当与缓存之间的通信发生错误时,每两次重试之间须等待的时间跨度。此值所使用的字符串格式为 "HH:MM:SS"。默认情况下,提供程序将睡眠 1 秒。

retryCount(可选)

一个整数值,告知提供程序在与缓存的通信失败时的重试次数。请注意,并非所有操作都可以重试。默认值为 3 次重试。提供程序在每两次重试之间会睡眠所配置的 retryInterval 时间。

inlinedKeys(可选)

包含以逗号或分号分隔的会话状态密钥集的字符串值(这些密钥的值应内嵌在会话状态元数据记录中)。此设置仅适用于将 useBlobMode 设置为 false 的情况。此设置可用作一种优化方法,用来缩短使用率高的会话状态项目的缓存往返时间。

maxInlinedStringLength(可选)

一个整数值,表示将自动内嵌在会话状态元数据库记录中的会话状态值的字符串大小上限。此设置仅适用于将 useBlobMode 设置为 false 的情况。字符串的默认长度为 512 个字符。

示例

下例中的 sessionState 元素为会话状态及共享的应用程序名称分别使用了相应的密钥值对。

<sessionState 
mode="Custom" 
customProvider="DistributedSessionProvider">
      <providers>
        <add name="DistributedSessionProvider"
             type="Microsoft.Web.DistributedCache.DistributedCacheSessionStateStoreProvider, 
     Microsoft.Web.DistributedCache"
             cacheName="default"
             applicationName="Contoso"
             useBlobMode="true" />
      </providers>
</sessionState>

另请参阅

概念

会话状态提供程序(AppFabric 1.1 缓存)

  2012-03-05