We have tomcat 6.0.35 installed and our webapp is deployed with idle timeout of 90 mins. We see sessions idle for more than 8 hours and is causing performance issues. Checked couple of forums but could not find a solution.
session time out for the webapp is set in web.xml for 90 mins.
When you say "performance issues", do you mean memory consumption? Idle sessions shouldn't be consuming any CPU.
Tomcat's normal housekeeping should be purging those timed-out sessions, so either something keeps bumping their keep-alive timers, or there are some sticky linkages that prevent them from being garbage-collected. I can't be more accurate than that without further details, though.
An IDE is no substitute for an Intelligent Developer.
William Brogden wrote:
Invalidation of a session proceeds by unlinking all references so I don't think a "sticky" linkage is possible.
Never underestimate the ability of people to stuff references to session objects into static variables.
True, the session will have been disconnected, but the referenced objects will live on. And since we don't have particulars so far, I'm not sure what the word "session" actually is considered to mean in this case.
Joined: Aug 06, 2012
Thanks Tim/Bill. I am attaching the Http session screenshot to the post. Issue is that when the session reaches a threshold of 1000 the webapp doesn't respond. We manually expire the sessions in Tomcat manager every 90 mins so that users can access the app.
We have Apache as the load balancer for tomcat and have worker.router.sticky_session=true set.
From your comments is see that the Tomcat's house keeping job is not purging the expired sessions. If so how to enable the job or troubleshoot why the job is not working as expected.
If I read it correctly, an improperly-configured session manager won't scan for expired sessions and therefore won't release them.
Joined: Aug 06, 2012
It is a standard installation of Tomcat and SAP Business Objects webapp has been deployed on it. I am completely new to tomcat and assigned to handle administration tasks. Would setting the processExpiresFrequency value to 1 or 2 in server.xml be helpful?