蚂蚁花呗第一次技术面(60min):
- Java容器有哪些?哪些是同步容器,哪些是并发容器?
- ArrayList和LinkedList的插入和访问的时间复杂度?
- java反射原理, 注解原理?
- 说说一致性 Hash 原理
- 新生代分为几个区?使用什么算法进行垃圾回收?为什么使用这个算法?
- HashMap在什么情况下会扩容,或者有哪些操作会导致扩容?
- HashMap push方法的执行过程?
- HashMap检测到hash冲突后,将元素插入在链表的末尾还是开头?
- 1.8还采用了红黑树,讲讲红黑树的特性,为什么人家一定要用红黑树而不是AVL、B树之类的?
- https和http区别,有没有用过其他安全传输手段?
- 线程池的工作原理,几个重要参数,然后给了具体几个参数分析线程池会怎么做,最后问阻塞队列的作用是什么?
- linux怎么查看系统负载情况?
- 请详细描述springmvc处理请求全流程?
- spring 一个bean装配的过程?
- 项目用 Spring 比较多,有没有了解 Spring 的原理?AOP 和 IOC 的原理
一面一共问了15个问题,信息量还是很大的,但是可以看到这些问题都不算难,主要是考察基础知识的掌握情况,这一轮面试的难度数据一面的正常难度,持续的时长也算是正常范围。
蚂蚁花呗二次技术面(30min)
- 查询中哪些情况不会使用索引?
- 数据库索引,底层是怎样实现的,为什么要用B树索引?
- Mysql主从同步的实现原理?
- MySQL是怎么用B+树?
- 谈谈数据库乐观锁与悲观锁?
- 有使用过哪些NoSQL数据库?MongoDB和Redis适用哪些场景?
- 描述分布式事务之TCC服务设计?
- Redis和memcache有什么区别?Redis为什么比memcache有优势?
- Redis 的数据结构
- 海量数据过滤,黑名单过滤一个