Spring对Session共享的管理(1)-----SpringSession的优点

来源:互联网 发布:计算机二进制算法 编辑:程序博客网 时间:2024/06/05 07:58

传统Session的局限性:

        通常情况下session交由容器来负责存储管理,比如Tomcat,但是在集群模式下多台tomcat之间无法共享session,另外一旦tomcat容器关闭或重启也会导致session会话失效。

解决的方法(3种):

        《1》第一种是使用容器扩展来实现,比如基于Tomcat的tomcat-redis-session-manager插件,基于Jetty的jetty-session-redis插件;这个方案的好处是对项目来说是透明的,无需改动代码,但是由于过于依赖容器,一旦容器升级或者更换意味着又得从新来过;

        《2》第二种是自己写一套Session会话管理的工具类,在需要使用会话的时候都从自己的工具类中获取,而工具类后端存储可以放到Redis中。这个方案灵活性很好,但开发需要一些额外的时间;

        《3》第三种是使用框架的会话管理工具,也就是我们要介绍的spring-session,可以理解是替换了Servlet那一套会话管理,既不依赖容器,又不需要改动代码,并且是使用spring-data-redis连接和操作redis,可以说是非常完美的解决方案。

Spring-Session的特点:

         Spring Session 提供一组API和实现,用于管理用户的session信息;

         提供HttpSession,以中立的方式允许取代web容器的session,比如tomcat;

         支持集群的session处理,不必绑定到具体的web容器去解决集群下的session共享问题。

至于Spring-Session的配置,在Spring对Session共享的管理(2)进行列举。

                   



阅读全文
0 0
原创粉丝点击