【发布时间】:2016-02-17 06:40:10
【问题描述】:
我们不断为我们的应用程序部署更新
但是每次部署都会终止所有用户会话。
我想使用 cookie 或类似方法实现一个没有此问题的会话系统。
最好的方法是什么?
【问题讨论】:
标签: asp.net asp.net-mvc session
我们不断为我们的应用程序部署更新
但是每次部署都会终止所有用户会话。
我想使用 cookie 或类似方法实现一个没有此问题的会话系统。
最好的方法是什么?
【问题讨论】:
标签: asp.net asp.net-mvc session
基本上有四种处理会话的方式(来自MSDN):
InProc 模式,将会话状态存储在 Web 服务器的内存中。这是默认设置。 StateServer 模式,它将会话状态存储在称为 ASP.NET 状态服务的单独进程中。这确保了会话状态是 如果 Web 应用程序重新启动并且还会进行会话,则保留 Web 场中的多个 Web 服务器可用的状态。
SQLServer 模式 将会话状态存储在 SQL Server 数据库中。这可确保在 Web 应用程序运行时保留会话状态 重新启动,并使会话状态可用于多个 Web Web 场中的服务器。
自定义模式,可让您指定自定义存储提供程序。
您很可能正在使用 In Process 会话(列出的第一个),这会导致在部署过程中会话中断。
迁移到其他任何一个都可以满足您的要求,但没有一个是实例,它们都有优点和缺点,因此您需要选择满足您(和您的组织)需求的一个。
【讨论】: