  | Mailing List | | Home | | Forum Home | | JBoss - Java Application Server | | Tomcat - JSP/Servlet container | | Struts - A MVC web framework | | iText - An open source PDF Java Library | | JDOM - JDOM XML Parser | | J2EE - A mailing list for Java(tm) 2 Platform, Enterprise Edition | | JSP - A mailing list about Java Server Pages specification and reference | | J2EE Pattern - An interest list for Sun Java Center J2EE Pattern Catalog | | Servlet - A mailing list for discussion about Sun Microsystem's Java Servlet API Technology | |
Struts & Hibernate
|
|
|
  | | | Tomcat Session Replication via Database Problem | Tomcat Session Replication via Database Problem 2007-01-15 - By Nino Ulsamer
Back Hello, we have a problem replicating sessions using Tomcat. We are using two servers which are load-balanced using Apache. We want to achieve session preservation over multiple requests of the same user (he might be forwarded to different servers for those requests).
What we tried to set up until now is database replication of the sessions using Tomcat's PersistentManager and the JDBCStore with a MySQL database. But if we request a page on one server only it takes about 10-60 seconds until the session is written to the database. Of course, the other server does not know about the session during this time and will create another session, if the second request goes to this server. Is this a known problem of the PersistentManager or might there be a misconfiguration? The problem is actually not the replication but the delayed writing of the PersistentManager to the database.
This is what we put into server.xml:
<Context docBase="jsp-examples" path="/jsp-examples"> <Manager className="org.apache.catalina.session.PersistentManager " maxIdleBackup="0" maxIdleSwap="0" checkInterval="1"> <Store className="org.apache.catalina.session.JDBCStore " connectionURL="jdbc:mysql://host/db?user=user&password=password" driverName="com.mysql.jdbc.Driver " debug="4" sessionIdCol="session_id" sessionValidCol="valid_session" sessionMaxInactiveCol="max_inactive" sessionLastAccessedCol="last_access" sessionTable = "tomcat_sessions" sessionAppCol = "app_context" sessionDataCol = "session_data" /> </Manager> </Context>
We read on Tomcat's website that the PersistentManager should be considered "experimental". Might that be the problem or can anyone suggest another solution for session replication?
Thank you for your help, Nino Ulsamer
|
|
 |