【发布时间】:2014-10-21 06:06:02
【问题描述】:
我在我的战争的 web.xml 文件中配置了 20 分钟的会话超时。但是我正在调用我的 servlet 以使用此 JavaScript 代码在 20 分钟后保持会话处于活动状态:
setInterval(function () {
$.get("sessionKeepAlive");
}, 240000);
在开发环境中一切正常,但在 QA 中却无法正常工作。我们在 QA 中使用负载均衡器。我想知道我们是否可以在服务器配置 cse 中更改任何内容来解决此问题。
web.xml:
<session-config>
<session-timeout>10</session-timeout>
</session-config>
【问题讨论】:
-
使用负载均衡器意味着您有多个应用服务器/servlet 容器。您是否在后端使用某种会话共享机制?你确定它配置正确吗?
-
您使用的是什么网络服务器?是否有一些集群机制处于活动状态?负载均衡器上的会话粘性?
-
另外,请确保 AJAX GET 请求不是直接从浏览器缓存中提供的。
-
我认为 POST 不太可能被缓存在某处,并且无论如何考虑到语义似乎更合适。
标签: java session session-timeout