别人面试案例(一)
面试(三面汇总到一起,共耗时3个小时)
1,大致讲一讲项目,问了几个项目中的问题以及实现,哪些地方可以改进。
2,喜欢看框架和jdk源码么?看过哪些?HashMap的原理?(数据结构:数组+单向链表、put,get,size等方法,put的时候hash碰撞问题,负载因子和扩容机制等),concurrenthashmap原理和技术,size方法的实现?我主动说了spring单例模式的实现实际上是维护了一个单例注册表,这个单例注册表就是个map。
3,ArrayList和LinkedList原理结构,以及LinkedHashMap底层结构?
4,ArrayList的elementData属性为什么用了transient修饰后,依然可以序列化,这样的好处?
5,Object类有哪些方法,并对每个方法进行讲解。
6,Redis有哪些数据结构(新版本redis不止五种)?以及每种结构的使用场景,redis分布式锁的实现(setnx、getset.....balabala...)
7,Redis参数配置,哪些可以优化?
8,Redis主从、哨兵、集群的原理?如何扩容(我参照的是hash环,其实不太对)?
9,说一下线上Redis遇到的问题,如何排查的(我说了个主从模式下主宕机后重启遇到的问题以及解决思路)?
10,Redis如何保证缓存的是热点数据(6种内存淘汰机制)?
11,分布式session一致性如何保证?
12,你们是怎么做前后端分离的(前台nginx,后端tomcat,并做了负载均衡)?这样做的好处?
13,nginx负载均衡算法(轮询、随机、LRU、ipHash...)?nginx反向代理?
14,了解http1.1和2.0不?简单谈了下http1.1,这个我了解的不深,最后我给扯到TCP/IP协议上了,刚毕业是在华为做通信工程师的,所以这个我熟悉。
15,问了些JVM的问题,2个命令,jstat和jmap。生产上如何处理OOM?
16,排查CPU百分百的思路?(这里我举了redis的一个引起cpu100%的案例,还有我的服务器被挖矿导致cpu100%的经历)
17,dubbo如何分组?zookeeper也可以做分布式锁你知道么?balabala......
18,用过什么MQ?我说用过ActiveMQ,最近在学习RocketMQ。面试官说他们公司用的是RabbitMQ.....
19,懂ES么?我直接说不懂,但是很感兴趣,知道有个ELK分布式日志框架.....
20,mysql熟悉么?我说正常的操作、sql优化和两种引擎的区别知道,底层的原理就不知道了,最后mysql没问太深。
20,微服务拆分,以及不同服务间使用同一个库是否合理(这其实就是伪微服务,违背了微服务理念的数据独立性)
21,最近在看什么书?有啥收获?我把我的2017、2018书单给他看,以及手机上拍的书架照片,然后技术总监从中挑了三本书一块聊了20分钟。
22,还有就是linux的一些特性和操作命令,并给了一些场景,问我如何去操作,熟悉开发中常用的命令,这些不难。
23,以后的职业规划和发展方向,有什么想问的?最后技术总监主动又给加了1k。
小破防今天你破防了吗 :痛苦预示着超脱
本文来自博客园,作者:小破防今天你破防了吗,转载请注明原文链接:https://www.cnblogs.com/supperlhg/p/8608024.html