首页 > 代码库 > TOMCAT 集群之 PERSISTENT SESSION
TOMCAT 集群之 PERSISTENT SESSION
tomcat的session保存在数据库中,不是很复杂,写下来供大家参考。
准备工作:
- 两架Ubuntu Server 12.04 64位,确定两级服务器可以互相ping的通并属于同一个网段
- 安装jdk1.6或者jdk1.7
- 安装tomcat 6或者tomcat7
- 测试multicast 参考文章http://www.javalinux.me/archives/840.html
- 在你的程序中的web.xml中加入<distributable/> 并测试是否可以运行
- 确认所有的session 属性全部有implements java.io.Serializable
1. 修改conf/context.xml 加入如下内容:
01 02 03 04 05 06 07 08 09 10 11 12 13 14 | < Manager className = ‘org.apache.catalina.session.PersistentManager‘ saveOnRestart = ‘false‘ minIdelSwap = ‘0‘ maxIdleSwap = ‘0‘ maxIdleBackup = ‘1‘ > < Store className = "org.apache.catalina.session.JDBCStore" driverName = "com.mysql.jdbc.Driver" connectionURL = "jdbc:mysql://localhost/tomcat_session?user=root&password=123456" sessionTable = "sessions" sessionIdCol = "session_id" sessionDataCol = "session_data" sessionValidCol = "valid_session" sessionMaxInactiveCol = "max_inactive" sessionLastAccessedCol = "last_access" checkInterval = "10" sessionAppCol = ‘app_name‘ /> </ Manager > |
这种配置将会把所有这个tomcat下面的session全部复制到数据库中,如果你只想要复制某个程序的话,将这个context.xml 保存到META-INF里面
2. 将mysql的jdbc 驱动复制到tomcat/lib下面
3. 修改catalina.sh, 在其最上面加入
1 | JAVA_OPTS= ‘-Dorg.apache.catalina.session.StandardSession.ACTIVITY_CHECK=true‘ |
完毕,你现在可以部署程序测试了
参考文章:http://www.intelligrape.com/blog/2010/07/21/tomcat-6-session-persistence-through-jdbcstore/
http://tomcat.apache.org/tomcat-6.0-doc/config/manager.html
http://www.datadisk.co.uk/html_docs/java_app/tomcat6/tomcat6_clustering.htm
TOMCAT 集群之 PERSISTENT SESSION
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。