Tonfay的gravatar头像
Tonfay 2015-06-03 15:19:17

apache shiro session如何实现多java web容器(tomcat ,jetty等) 中共享使用?

如题!

最近在搞项目上线,达到客户的session不丢失的情况(这只是一方面) 

不考虑在容器内做相应的修改,仅仅依赖于shiro的session 在多容器中共享.

求大神指教,及讨论.

所有回答列表(2)
最代码官方的gravatar头像
最代码官方  LV168 2015年6月3日

对于session共享的问题,我觉得有2种思路。

1.基于客户端cookie实现

将用户的加密信息放到cookie中,当用户请求时加载到各自容器的session中。

2.基于服务端的共享存储实现

用户登录成功后将其记录到数据库或内存或其他存储介质中,该存储介质被多个容器共享访问。

不管是你说的shiro还是其他系统都可以通过该机制实现sso机制。

一介草民的gravatar头像
一介草民  LV3 2015年6月4日

1、弃用session,用cookie代替,不安全

2、容器自带的session复制,据说访问量特别大的时候会出现session风暴

3、用过一个memcached管理session的框架,可能技术水平问题,问题多多,最后就没用了

4、模拟session,借助第三方存储,比如redis

5、spring貌似提供了一个spring-session框架,还没实践过

(吐槽一下最代码,我在没登陆情况下写了这些内容,一提交跳到登录页面本来没什么问题,不过登陆成功后你倒是给我跳回来啊,害我又写了一遍)

顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友