简而言之,我们拥有的是一个运行的tomcat服务器,它将在用户从特定URL的页面登录后连接到数据库。用户通过单击“注销”断开与应用程序的连接,然后关闭浏览器;数据库仍然显示我们检查会话时运行的tomcat会话。 DBA必须去杀死非活动会话以避免问题。
到目前为止一切正常,但是在一段时间内,这些“非活动”会话继续增加到一个限制,它需要应用程序服务器重新启动以清理非活动会话并避免HTTP 503错误的网关错误消息为用户。我们在这里错过了什么?应用程序代码的某些部分似乎确实存在问题,我们正在检查它,但除此之外;为避免此问题,我们还需要做些什么设置/更改?有没有办法在用户注销后自动杀死这些会话?
注意 - 我确实在这里查看了这个问题 - Inactive JDBC sessions但我们没有报告任何数据库错误。我们得到的只是浏览器中的HTTP 503 - 错误的网关错误消息,用户和数据库慢下来爬行。