对于高访问量、高并发量的网站或web应用来说,目前最常见的解决方案应该就是利用负载均衡进行server集群,集群之后比如我们有N个节点的Tomcat,用户在访问我们的网站时有可能第一次请求分发到tomcat1下,而第二次请求又分发到了tomcat2下,web分发到不同的服务器节点,这时session不一致,所以我们需要解决一下多个tomcat之间session共享的问题。
环境由tomcat7进行配置,准备一个Java的test.war进行session贡献测试,只是一个页面展示包已上传至http://download.csdn.net/detail/xiaoyi23000/9859455
1、在java程序中将web.xml文件中增加<distributable/>标签,如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>test</display-name>
<distributable/>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
2、每个tomcat下conf文件夹下的context.xml文件,将<context>改为<Context distributable="true">
<Context distributable="true">
3、每个tomcat下conf文件夹下的server.xml文件的<Eng