<强>为何要用春季强>
在传统单机网络应用中,一般使用tomcat或jetty等web容器时,用户的会议都是由容器管理。浏览器使用饼干中记录sessionId,容器根据sessionId判断用户是否存在会话会话。这里的限制是,会话存储在web容器中,被单台服务器容器管理。
但是网站主键演变,分布式应用和集群是趋势(提高性能)。此时用户的请求可能被负载分发至不同的服务器,此时传统的web容器管理用户会话会话的方式即行不通。除非集群或者分布式网络应用能够共享会话,尽管tomcat等支持这样做。但是这样存在以下两点问题:
需要侵入网络容器,提高问题的复杂
web容器之间共享会话,集群机器之间势必要交互耦合
有了春季之后,我们可以将会话保存到复述,Mongodb等nosql数据库。这样就避免了单点缓存的限制。
让我们
1。引入jar包
& lt; dependency> & lt; groupId> org.springframework.session & lt; artifactId> spring-session-data-redis & lt;/dependency> & lt; dependency> & lt; groupId> redis.clients & lt; artifactId> jedis & lt; version> 2.9.0 & lt;/dependency>
2,在application.properties中加入如下配置文件
#设置会话存储格式为复述 spring.session.store-type=复述, server.servlet.session.timeout=3600 #会话更新策略,有ON_SAVE,立即前者是在调用# SessionRepository #保存(org.springframework.session.Session)时,在响应提交前刷新缓存,#后者是只要有任何更新就会刷新缓存 spring.session.redis.flush-mode=保存时 spring.session.redis.namespace=春:会话 #复述,配置 spring.redis.database=0 spring.redis.host=10.34.51.234 spring.redis.password=123456 spring.redis.pool.max-active=8 spring.redis.pool.max-idle=8 spring.redis.pool.max-wait=1 spring.redis.pool.min-idle=0 spring.redis.port=6379
3,配置复述,服务器
(略)
4,编写SpringBoot程序
5,运行登录一下吧
可以看到查看到了会话信息
6,未完成序列化操作,不过我感觉也没必要完成序列化操作吧~
结束!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。