前言
首先说点鸡汤吧,在面试过程中心态真的很重要,我们可能会遇到简历挂、笔试挂、面试挂等各种各样的问题,一定要调整好心态,不要被网上一些贩卖焦虑的信息影响到,专心去提升自己,找准自己的定位和方向,然后不断坚持下去,一定会有所收获的。祝愿还没上岸的朋友们最终都能收获一份满意的工作!!!
一面
1、mysql索引结构?
2、redis持久化策略?
(1)RDB:快照形式是直接把内存中的数据保存到一个dump的文件中,定时保存,保存策略。
当Redis 需要做持久化时,Redis会fork一个子进程,子进程将数据写到磁盘上一个临时RDB
文件中。当子进程完成写临时文件后,将原来的RDB替换掉。
(2)AOF:把所有的对Redis的服务器进行修改的命令都存到一个文件里,命令的集合。使用
AOF做持久化,每一个写命令都通过write函数追加到appendonly.aof 中。aof的默认策略是
每秒钟fsync一次,在这种配置下,就算发生故障停机,也最多丢失一秒钟的数据。缺点
是对于相同的数据集来说,AOF的文件体积通常要大于RDB文件的体积。根据所使用的fsync
策略,AOF的速度可能会慢于RDB。Redis默认是快照RDB的持久化方式。
3、zookeeper节点类型说一下;
4、zookeeper选举机制?
5、zookeeper主节点故障,如何重新选举?
6、syn机制?
7、线程池的核心参数;
8、threadlocal的实现,原理,业务用来做什么?
9、spring di的原理;
10、四次挥手;
11、gcroot选择;
12、标记清除算法的过程,标记清楚算法如何给对象分配内存空间?
13、cms算法的缺点;
二面
1、correnthashmap?
2、threadlocal原理?
3、hashmap;
4、Java数据类型,同步机制;
5、讲讲贪心算法;
6、如果线上用户出现502错误你怎么排查?
7、并发量很大,服务器宕机。你会怎么做?
三面
1、syn和lock的区别,哪个更好?怎么选择?
2、hashmap源码,为什么8个节点变成红黑树又为什么到了6个节点才恢复为链表?
3、缓存穿透,怎么解决?
4、负载均衡算法,实现;
5、轮询和随机的缺点;
6、分布式服务治理;
7、dns迭代和递归的区别;
8、算法题:最长回文串;这道牛客题霸上有原题,大家可以去看看:NC17最长回文串
9、为什么连接的时候是三次握手,关闭的时候却是四次握手?
因为当Server端收到Client端的SYN连接请求报文后,可以直接发送SYN+ACK报文。其中ACK 报文是用来应答的,SYN报文是用来同步的。但是关闭连接时,当Server端收到
FIN报文时,很可能并不会立即关闭SOCKET,所以只能先回复一个ACK报文,告诉Client
端,“你发的FIN 报文我收到了”。只有等到我Server端所有的报文都发送完了,我才能发送
FIN 报文,因此不能一起发送。故需要四步握手。
我的面试经验汇总
下面先给大家上一个总的目录大纲,基础的东西就不进行过多的赘述,我们将会从面试必问的说起,同时由于每篇的内容过多,我们也只说重点,太过基础的内容谁都会,我就不多敲字浪费大家的时间了!
有需要的朋友点击这里自取就好了,希望资料对你有帮助!
SpringCloud
Redis
JVM
MySQL
Zookeeper
Kafka
Dubbo
spring
Rabbitmq
springboot
最后
由于文章篇幅有限,PDF的内容又很多,全部手敲下来很累…所以需要阅读阅读学习的,大家“一件三连后:“查看下方””即可拿到手之后自己学习吧,博主真的打字打累了。
有需要的朋友点击这里自取就好了,希望资料对你有帮助!
预祝大家前程似锦,工作顺利!