我在具有非粘性负载均衡器的集群环境中使用tomcat 7.0.47。会话通过PersistentManager存储在postgres数据库中,具有以下设置:
<Manager className="org.apache.catalina.session.PersistentManager"
distributable="true"
processExpiresFrequency="1"
saveOnRestart="true"
maxActiveSessions="-1"
minIdleSwap="0"
maxIdleSwap="0"
maxIdleBackup="0">
我注意到新创建的会话持久存储到数据库需要3到5秒。目前,我在会话创建事件之后引入了一个人工延迟,以允许会话可用于其他服务器。
显然,这并不理想。有没有人遇到这个问题,可以建议解决这个问题?将负载均衡器更改为粘性不是一种选择。