分布式下的Session解决方案
分布式下的Session解决方案单点登录在单机模式下是非常好解决的,毕竟只要在单机的Session中存储一份即可,而在分布式下单点登录由于相同服务的机器众多,不可能每个服务器每次都会对同一个服务器服务,所以分布式下的单点登录就成为了一个问题.单点登录一般依靠Cookie或者Session实现(Ses
分布式下的Session解决方案单点登录在单机模式下是非常好解决的,毕竟只要在单机的Session中存储一份即可,而在分布式下单点登录由于相同服务的机器众多,不可能每个服务器每次都会对同一个服务器服务,所以分布式下的单点登录就成为了一个问题.单点登录一般依靠Cookie或者Session实现(Ses
Integer Long缓存知识我们都知道Integer是一个int类型的包装类,具有缓存-128-127.这里通过源代码展示下为什么是这个区间的缓存值/** * Cache to support the object identity semantics of autoboxing for
测试环境:Liberia OpenJDK 1.8 11 17偶然知乎刷到一个面试题的讨论https://www.zhihu.com/question/50211894/answer/2395077963这里说String s = new String("a") + new Str
MQ消息积压以及处理方案这种时候只能操作临时扩容,以更快的速度去消费数据了增加多个消费者,加速消费新建topic引流,将消息引导别的程序中,洪水一个道理。如何保证消息不被丢失生产者丢失消息这里我们有两种方法可以避免RabbitMQ丢失消息开启RabbitMQ的事务功能,就是生产者在发送数据之前开启事
缓存穿透访问一个不存在的key(查询 userid = -10),缓存不起作用,请求会穿透到DB,流量大时DB会挂掉解决方案布隆过滤器接口层增加校验,如用户鉴权校验,id做基础校验,id<=0的直接拦截缓存击穿一个存在的key,在缓存过期的那一刻,同时有大量的请求,这些请求都会击穿到DB,造成
Eureka是SpringCloud Netflix的子组件,作用是注册中心,类似于Dubbo的Zookeeper,以及Alibaba的Nacos,负责查看和管理各个微服务的情况,同时也协调了各个微服务Eureka分类Eureka-Server和Eureka-Client两部分,1.Eureka-S
认证和授权认证认证 (Authentication): 服务器需要知道你是谁。授权 (Authorization): 服务器需要知道你有权限干什么。要解决的问题用户认证和授权,在最开始依赖于Cookie和Session,但两种方法都存在一些弊端,Cookie因为存放在用户浏览器中,安全性不能得到保证
得益于SpringBoot2的自动配置,所以静态资源的处理也是有自动配置的,打开源代码中的WebProperties类就可以看到SpringBoot2对于静态资源的默认路径有如下几个private static final String[] CLASSPATH_RESOURCE_LOCATIONS
这里基本和SpringBoot2上传单个文件的方式相同,只不过文件变成了多个@RestControllerpublic class FileUploadController2 { private DateTimeFormatter dateFormat = DateTimeFormatter.of
SpringMVC的时候我们引入了apache.commons.fileupload包来进行文件上传,在SpringBoot2中则不需要引入该jar包(当然,引入也是可以的)这里先将上传单个文件的代码,做一份记录@RestControllerpublic class FileUploadContro