本文摘自PHP中文网,作者coldplay.xixi,侵删。
使用Spring Session和Redis解决分布式Session跨域共享问题
现象阐述:
在项目中前后端代码未做分离,在两台实例的情况下服务正常运行偶尔会弹出类似需要重新登录的提示,后台报错信息
这是处理器异常 原因并不明显
增加机器实例后,在访问前端页面的时候,一直重复访问登录页面,导致页面302,种种迹象表明是登录配置的问题引起的。
相关专题推荐:php session (包含图文、视频、案例)
问题引入:Session不能共享导致不同机器之间轮询要求登录导致最终的服务异常
解决方案:使用Spring Session和Redis解决分布式Session跨域共享问题
解决配置:
1 )添加依赖
1 2 3 4 5 6 7 8 9 10 | <dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-redis</artifactId>
<version>1.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.7</version>
</dependency>
|
2 )web.xml配置文件添加:
1 2 3 4 5 6 7 8 9 | <!-- 分布式Session共享Filter -->
<filter>
<filter-name>springSessionRepositoryFilter</filter-name>
<filter- class >org.springframework.web.filter.DelegatingFilterProxy</filter- class >
</filter>
<filter-mapping>
<filter-name>springSessionRepositoryFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
|
3) Spring.xml的配置
阅读剩余部分
相关阅读 >>
Redis集群怎么防止脑裂
Redis如何实现限流?3种实现方式介绍
centos下Redis的安装方法介绍
Redis讲解分布式数据库cap原理
Redis添加systemctl服务的具体步骤
Redis是什么服务器
连接Redis集群报错:(error) moved的解决方法
Redis和mongodb区别
Redis为什么默认建立16个数据库
燕十八Redis视频资料下载(课件、源码)
更多相关阅读请进入《Redis》频道 >>
机械工业出版社
本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。
转载请注明出处:木庄网络博客 » 学习Spring Session和Redis解决分布式Session跨域共享问题