读书人

Tomcat集群Session丢掉解决方案

发布时间: 2012-07-23 09:42:20 作者: rapoo

Tomcat集群Session丢失解决方案
这几天单服务器整合项目很正常,集群的时候问题就来了,配置集群的Session时候已经使用Demo测试过正常的,项目一放上去就挂了,搞了差不多一个星期,其中还试过用Cookie来取代Session,因为安全问题放弃了;网上发现一个很不错的Tomcat的Session管理插件Memcached Session Manager,这个插件是基于Memcached实现的,配置方法如下:

先安装memcached server,首先解压memcached-1.2.6-win32-bin.zip到指定目录(eg:d:/memcached/),然后在cmd窗口上输入memcached -d install 进行安装服务, 然后输入 memcahced -d start启动服务器,服务器监听的端口是11211。

然后再把所需的jar包放到tomcat的lib目录下:
javolution-5.5.1.jar
msm-javolution-serializer-1.5.1.jar
memcached-2.6.jar
memcached-session-manager-1.5.1.jar
memcached-session-manager-tc6-1.5.1.jar

新建一个Web Project测试一下吧。

然后修改tomcat的server.xml配置文件,在Engine -> Host 元素里面配置虚拟上下文

Eg:

<Context reloadable="true" path="/test" docBase="D:/Memcached" >            <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"                      memcachedNodes="n1:localhost:11211"                  requestUriIgnorePattern=".*\.(png|gif|jpg|css|js){1}"                sessionBackupAsync="false"                sessionBackupTimeout="100"                      transcoderFactory                     copyCollectionsForSerialization="false"                  />          </Context>

这样既不就简单完成了。
附件:所需的jar包,不用麻烦去一个个下载。

读书人网 >软件架构设计

热点推荐