【发布时间】:2013-10-18 01:38:47
【问题描述】:
因此,我被赋予了将会话超时设置为 24 小时的任务,在网上阅读了一些内容,我发现我还需要将表单身份验证设置为该时间范围,这样用户就不会注销。我的问题是,服务器端有什么缺点吗?由于它必须控制所有这些会话,它会更努力/更慢吗?
【问题讨论】:
标签: c# asp.net session timeout
因此,我被赋予了将会话超时设置为 24 小时的任务,在网上阅读了一些内容,我发现我还需要将表单身份验证设置为该时间范围,这样用户就不会注销。我的问题是,服务器端有什么缺点吗?由于它必须控制所有这些会话,它会更努力/更慢吗?
【问题讨论】:
标签: c# asp.net session timeout
由于必须保留所有内容,它会更努力/更慢吗? 检查那些会话?
除了用户不需要重新登录并且服务器不需要再次验证用户之外,服务器没有性能提升或减慢。
一旦用户登录,服务器会检查身份验证 cookie 是否仍然有效在每次回帖时 (不管你有多长或多短设置超时)。
通常,您希望将表单身份验证超时设置为大于会话超时。
例如,
<authentication mode="Forms">
<forms loginUrl="~/Account/Login.aspx" timeout="2880"/>
</authentication>
<sessionState timeout="1440"/>
【讨论】:
它实际上比这更复杂一些。我不记得哪个是哪个,但它们有不同的有效期。每次请求都会重置会话超时,而表单身份验证票仅在至少一半超时到期后才会重置。所以这需要是会话超时大小的两倍。
【讨论】: