1

设置高会话超时是否会使用更多服务器资源?或者这只是用户本地计算机上的会话 cookie 过期的时间量?

4

1 回答 1

1

好问题..

  • 配置较大的会话超时值会导致 HttpSession 对象占用的内存比需要的时间长

  • Servlet 容器跟踪所有 HttpSession 对象,并通过将用户最后一次访问应用程序的时间与会话超时值进行比较来确定用户是否处于活动状态。

  • 举个例子,如果一个会话占用的平均内存是 10KB,这里是 10 万和 20 万用户超时 30 分钟的情况

在此处输入图像描述

现在如果将超时时间增加到 60 分钟,

在此处输入图像描述

可以看到内存申请占用双倍内存来保持会话的区别。

结论:除非绝对必要,否则不要增加会话超时值。最好将默认会话超时值保留为 30 分钟,或者在应用程序允许的情况下将其设置得更低。

于 2014-05-15T18:09:19.293 回答