【面试问题6】

一.gc的过程。

1.第一步进行第一次标记,也就是从GCroot对象往下确认调用链,没有被引用的对象标记为垃圾,这种方法为可达性分析,gcroot对象从虚拟机栈,本地方法栈对象,方法区静态变量对象,方法区常量对象中选取。
2.第二步进行第二次标记,查看对象的finilize方法的引用对象是否在第一次标记的引用链上,如果有引用则放弃该对象的回收。
3.进行回收操作,新生代采用的是复制算法,老年代采用的是标记清除算法,或者标记整理法进行回收垃圾。

二、.双token机制

双token机制是为了解决活跃用户频繁登录设计的,用户登录后会返回两个token一个是accesstoken一个是refreshtoken,accesstoken一般有效期为30分钟内,accesstoken一般为一天或者两天,校验过程如下,1.服务器端校验accesstoken有效则放行 ,无效则校验refreshtoken
2.校验refreshtoken在有效期内,则说明该用户至少在这一天或者2天内是活跃的,刷新accesstoken和refreshtoken给到客户端。
3.这样如果用户是一天内活跃的就不用重新登录了。
4.如果两个token都失效了,则证明该用户一天或者两天没有活跃了,需要重新登录。

三、springgateway原理

1.springgateway底层使用的springwebflux框架进行通信,这个框架使用的是netty的reactor模型进行服务调用转发。
2.在多cpu的场景下,高并发使用的是主从reactor多线程模型进行服务转发。

猜你喜欢

转载自blog.csdn.net/qq_34526237/article/details/129011762
今日推荐