使用状态服务器存储 ASP.NET Session

作者:vkvi 来源:ITPOW(原创) 日期:2023-8-15

ASP.NET 的 Session 默认是存储在 IIS 进程中的,默认是 20 分钟,但是实际使用中,我们会发现经常还不到 20 分钟,Session 就丢失了。

所以建议不将 Session 存储在 IIS 进程中,考虑使用 StateServer 模式。

步骤一

在服务中,启动 ASP.NET State Service,同时建议设置为自动启动,以避免服务器重启时,需要手工启动服务。

步骤二

在 IIS 的会话状态中,选择状态服务器

IIS状态服务器

或者直接在 web.config 中配置。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.web>
        <sessionState mode="StateServer" />
    </system.web>
</configuration>

更详细参数:

<sessionState mode="StateServer" cookieless="false" timeout="20" stateConnectionString="tcpip=loopback:42424" />

timeout 是分钟。

相关文章