2009-01-11 80 views
1

我正在写一个只能由经过身份验证的用户使用的web应用程序。一些临时数据库和日志文件将在每个用户会话期间创建。我想在会话结束时清除所有这些临时文件。何时删除用户的会话

显然,注销或窗口关闭事件足以关闭会话,但在某些情况下,用户可能会在浏览器完成后很长时间保持浏览器打开状态。

另一种方法是定时用户会话或在日常维护期间删除临时文件。

你如何去做呢?

回答

1

用户会话应该有一个超时值,并应在超时到期或用户注销时关闭。注销是一个明显的时间来做到这一点,如果用户在不注销的情况下离开应用程序,超时需要在那里。

0

删除用户的会话期间:

1)注销

2)自动超时(超时的长度可以通过在web.config设置)

3)的任何其它部分您通过删除任何会话信息(您的会话信息在某段时间内未被访问)(可能短于您的自动超时时间长度,因为如果它的长度相同,应该已经被处理),您已经运行的日常维护方法

+0

我真的不明白3)。你的意思是设置超时时间,比如说,1小时,然后在20分钟后删除会话? – kender 2009-01-11 07:07:26

1

清理数据库中任何过期的会话数据的cron作业是件好事。根据会话持续的时间长短以及数据库的大小,您可能希望每天清理一次以上。但每天一次清理通行证通常很好。