昨天竟然收到支付宝的电话面试邀约,没记得投过啊,想着还是见识见识吧,遂约了晚上9点的时间。不过那位小哥说是开会,还是晚上10点左右才开始,整个过程大约1个半小时,氛围还是蛮和谐的。今早还是记录下,供大家参考。
一、自我介绍(一两分钟)
老生常谈,一上来就是自我介绍,大约一两分钟的样子。
二、项目经历(大约1个小时)
项目情况,介绍下最近做的项目,主要的技术栈又哪些,接下来的主要技术点都是从项目中引出来的。个人觉得项目这块是个大重点,可以着重准备下。
每个人的项目使用情况不同,我的项目中,他问道了这么几个问题。
1、redis
- 1)缓存实现机制
- 2)持久化机制
- 3)redis的线程模型
- 4)哈希槽的概念
2、springboot
- 1)boot和springmvc的区别
- 2)boot的核心注解
- 3)boot的工作流程
- 4)注册中心用的什么
3、分布式
感觉分布式这块是他很关心的一块,问的特别多、也很细。
- 1)分布式session的解决方案
- 2)有没有用到分布式锁,主要有哪几种实现方式
- 3)分布式事务了解吗,说下实现原理
- 4)简单说下CAP原理、BASE理论
- 5)有用到幂等性设计吗,如何实现的
- 6)分布式缓存要注意哪几种情况
- 7)网关是如何设计的
4、zookeeper
- 1)zookeeper的工作原理
- 2)zookeeper如何保证数据一致性
- 3)zookeeper的集群中有节点宕机,如何处理
5、rabbitmq
- 1)rabbitmq的消息确认机制,重试机制
- 2)和kafka的区别
三、其他(半个小时的样子)
上面的项目经历已经差不多1个小时了,接下来还问了些基础相关的东西。
- 说下HashMap的原理。
- ConcurrentHashMap在 JDK1.8 之后和之前实现的不同。
- Java NIO了解吗,说下你的理解。
- Java注解有用到过吗,如何写一个注解。
- 介绍下spring的 IOC 和 AOP。
- 数据库事务的四个特性和隔离级别。
- mysql中MyISAM和InnoDB的区别。
四、结束
你有什么想要了解的吗。
差不多了,只记得上面这些问题了,问的还是蛮全面的。建议面试前还是要充分准备下,这样既是对自己负责,也是对别人的尊重,毕竟大家都花了这么宝贵的时间,哈哈。加油