做负载均衡的时候,往往会遇到需要session同步的问题,方案很多,但是都有各种的缺点,最近发现-session项目,原理是将session保存到,来实现session同步,好处是不管增加多少个tomcat,都没有问题,做负载的时候,也不用考虑session问题,而且配置灰常简单,因为我们的项目就是用redis来缓存数据的,只需要添加两行配置即可
1、添加spring-session
org.springframework.session spring-session 1.0.2.RELEASE
2、在spring 配置文件里面配置一个bean
3、在web.xml里面添加一个监听器
springSessionRepositoryFilter org.springframework.web.filter.DelegatingFilterProxy springSessionRepositoryFilter /*
以上,就实现了将session透明的写入到redis,代码都不需要改变,我们用的是spring-mvc,切换很顺畅,没有遇到什么大问题
需要注意的就是redis需要2.8以上版本,然后开启事件通知,在redis配置文件里面加上
notify-keyspace-events Ex