4.会话管理

基于cookie传输sessionid:java tomcat容器session实现

对于传统实现,我们经常会用cookie来传输session,将登录状态等信息传到request的session中。

基于token传输类似sessionid:java代码session实现

在移动端或是很多浏览器会禁用cookie,导致通过cookie不奏效,因此出现了基于token的方式。具体实现后面再说。


对于分布式会话,又有了新的方式:

基于cookie传输sessionid:java tomcat容器session实现迁移到redis

基于token传输类似sessionid:java代码session实现迁移到redis

这是由于分布式架构时,session都存在自己机器的内存上,所以多台机器的时候,session是不共享的。为了解决这个,就是用redis。

首先安装一下:

首先wget http://download.redis.io/releases/redis-5.0.8.tar.gz命令下载。

然后chmod -R 777 redis-5.0.8.tar.gz

然后tar -xvzf redis-5.0.8.tar.gz解压

进入目录后./configure生成配置

make进行编译

make install安装redis

进入src后执行./redis-server启动

接下来还需要改下配置:

这做是为了让内网的其他服务器可以访问到这个reids。 这样,后台绑定的ip就变了

然后去应用服务器上添加配置:

加依赖

    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-data-redis</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.session</groupId>
      <artifactId>spring-session-data-redis</artifactId>
      <version>2.0.5.RELEASE</version>
    </dependency>

下面这个依赖可以让spring对session的管理方式存到redis中。

发布了97 篇原创文章 · 获赞 28 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/haozi_rou/article/details/105311160