美文网首页
二十九、分布式会话简述和应用

二十九、分布式会话简述和应用

作者: 那钱有着落吗 | 来源:发表于2020-12-02 09:11 被阅读0次

架构如果设计为分布式的时候,那么如何保证会话的统计呢,多台tomcat,每个请求都不是到同一个tomcat,这样就创建了很多会话,会话无法统一,也就无法保证用户的信息统一了。

一、使用redis做分布式会话
redis是分布式的,我们就可以生成token并携带用户id存储到redis中,同时保存cookie中的token信息,这样用户浏览器的cookie和分布式的redis中的token就保持了一致。


image.png
image.png

二、使用springSession做分布式会话

首先需要引入spring-session依赖,如果有报错缺少security依赖,就把下面的依赖一并加上。


image.png

配置:
store-type : 会话信息保存的介质


image.png

在启动类里面也需要加上注解,打开使用redis作为spring session


image.png

然后启动之后,我们会发现redis中已经有了一些spring-session的东西,这些都是spring-session初始化的数据。


image.png

spring-session是需要我们登陆一下的,默认的用户名是user,密码可以在控制台看到


image.png image.png

使用了springSecurity框架,有一点就是总是需要登陆,那么怎么去掉登陆呢?可以在启动类里面,把这个安全依赖给去除掉即可。


image.png

上面我们讲了两种使用分布式会话的方式,其实最推荐的还是使用redis,因为使用spring-session会与java和spring的耦合度比较高,因为如果团队中有其他同事使用其他的编程语言,那么他去取spring-session存储的redis数据会比较难受,因为spring-session存储的数据较为复杂:


image.png

相关文章

  • 二十九、分布式会话简述和应用

    架构如果设计为分布式的时候,那么如何保证会话的统计呢,多台tomcat,每个请求都不是到同一个tomcat,这样就...

  • 2019-08-23 SpringBoot分布式应用系列

    转自:SpringBoot应用系列文章 SpringBoot应用之分布式会话 SpringBoot应用之配置中心 ...

  • 分布式 - 应用会话管理

    Session和Cookie 由于HTTP协议是无状态的协议,所以服务端需要记录用户的状态时,就需要用某种机制来识...

  • iOS音频录制

    音频会话(Audio Session) 音频会话是应用程序和操作系统之间的中间人。应用程序不需要具体知道怎样和音频...

  • 第二部分 网络编程和并发(34题)

    备注:自用回答 1、简述 OSI 七层协议。 答:物理层,数据链路层,网络层,传输层,会话层,表示层,应用层 2、...

  • 哈希算法(下)

    哈希算法在分布式系统中的应用 负载均衡 1.需求如何实现一个会话粘滞(session sticky)的负载均衡算法...

  • 会话与状态管理

    Web应用中的会话与会话状态 Web应用的会话状态是指Web服务器与浏览器在会话过程中产生的状态信息,借助会话状态...

  • AVFoundation - 音频播放与录制

    一 音频会话 音频会话:音频会话在应用程序中扮演中间人的角色,可以通过音频会话来控制音频的操作所有的应用程序都有音...

  • Web基础

    1、简述 网络的七层协议从上到下:7、应用层 6、表示层 5、会话层 4、传输层 3、网络层 2、数据链路层 1...

  • Docker 安装 MongoDB

    简述(官方指引) MongoDB是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 web 应用提供可...

网友评论

      本文标题:二十九、分布式会话简述和应用

      本文链接:https://www.haomeiwen.com/subject/jzyfiktx.html