0

我正在开发一个存储有关会话的一些信息的网络应用程序,它必须保持活跃至少 2 小时。(有点像购物车)。

我在多个 weblogic 实例前使用 Apache。Apache 用于缓存 + 只是一些 RR 平衡。

在我的 web.xml 中,我配置了 120 分钟的会话时间。

但现在我想知道所有这些 Apache 设置,比如一般的“超时,保持活动,保持活动超时”

以及我可以在“balance-config”中指定的那些,目前是

SetHandler weblogic-handler

WebLogicCluster serv1:port1,ser2:port2

ConnectTimeoutSecs 10

连接重试秒 2

KeepAliveEnabled 开启

KeepAliveSecs 15

WLCookieName WLBALANCECOOKIENAME

所以在这里我可以指定另一个 KeepAliveEnabled / KeepAliveSecs

我是否必须将所有内容都设置为 keepalive=YES 并将秒数设置为 7200+?这确保我的 web.xml 的 2 小时会话超时将得到尊重?

我可能可以降低一般的“超时”,因为据我了解,这是针对长请求/响应的。

4

1 回答 1

2

KeepAlive未链接到 weblogic 上的会话超时。

Apache 服务器中的KeepAliveApache 插件通过使用从 Apache 插件到 WebLogic Server 的可重用连接池来提高性能。如果连接处于非活动状态超过 30 秒(或用户定义的时间量),则连接将关闭并返回到池中。

仍然建议将 KeepAlive 设置为 ON,并将 KeepAliveSecs 15 设置为默认值。

现在讨论启用 2 小时会话超时的主要问题。注意:2 小时是一个很高的时间(默认只有 30 分钟),您的 Weblogic 服务器将使用更多内存来保持会话详细信息有效。

我假设您依赖 Apache 根据用户的 JSESSIONID 定向到正确的 Weblogic 服务器。在这种情况下 - Apache 会将请求发送到集群中正确的 Weblogic 服务器 - 并且用户的会话将在该服务器上保持活动状态。除非您打开会话复制,这是另一个内存占用者。

但要回答你的问题,你的 120 分钟应该根据<session-timeout>web.xml 中的设置得到尊重。也可以在 weblogic.xml 中设置,但最重要的是 web.xml

于 2012-05-23T09:24:16.863 回答