面试题
1、简单自我介绍,完了简单问了下技术栈
2、项目中的权限设计大概说下,从登录到用户请求授权流程说下,说下项目中的组织和业务权限有关还是数据权限有关,数据权限是如何实现的,然后问微服务下,权限拦截是在网关还是在各个服务中
3、简单说下redis、redis过期策略,淘汰策略,默认淘汰策略,多路复用
4、MQ rabbitMq 中 描述了简单业务,其实就是 广播和单播的定义,然后让我说下这个在RabbitMq中是什么层面的,就是交换机层面
5、说下 MySql 索引 底层实现 B+Tree 回表等概念
6、说下 Map 常用的map 及使用场景 TreeMap HashMap CurrentHashMap LinkedHashMap,HashMap 1.8之前和之后有哈区别,CurrentHashMap 如何保证线程安全,inkedHashMap 如何保证有序
7、gzip nginx 设置了gzip 一定会生效吗,我说不会,他有一个阈值,当超过这个阈值的时候才会压缩,因为压缩和解压缩也会消耗一定的CPU资源,然后他说有些情况GZIP压缩也会出现越压缩越大的问题,然后问浏览器请求中 request和response携带Gzip的含义,我说的是 request向服务器端声明需要的返回是GZIp压缩后的,response则说明返回结果是GZip压缩的,他的意思是request只是一个希望响应GZip的
8、cookie 说下 cookie服务端可以操作吗,然后其他域如何访问这个域内的cookie信息,如何设置cookie域,和路径有关吗,最后引申到ajax跨域
9、spring 说下spring 中事物管理的注解的原理(AOP),然后说了个场景,问事务是否存在,在方法中没有事物,然后this调用本类有事物注解的方法,事物是否生效,不生效原因,Async和Transa注解标记同一个方法会什么情况,原因,说下 spring 使用aop的原理(动态代理),jdk的动态代理原理和要实现哪个接口
10、设计模式 单例模式说下,说下懒汉式都优化了那些
11、说下 jvm 分代,然后问了下 方法在jvm的什么地方 方法中的 int 和 integer 还有 string 分别该在堆还是栈,问了下对象和基本类型的值传递和引用传递,以及字符串属于值传递还是引用传递
12、说下 docker 底层用了什么原理做的资源隔离,cmd和entrypoint的区别
13、说下 k8s pod
14、简单问了下 ffmpeg 如何执行命令
15、你对我们公司有啥想了解的吗