蚂蚁金融团队面试题:GC回收器+ReetrantLock+NoSQL+高并发方案

蚂蚁金融团队面试题:GC回收器+ReetrantLock+NoSQL+高并发方案

 

一面

  1. 自我介绍
  2. 对象相等的判断,equals方法实现。 Hashcode的做用,与 equal 有什么区别?
  3. Java中CAS算法?
  4. G1回收器讲一下?
  5. HashMap,ConcurrentHashMap与LinkedHashMap的区别
  6. 如何在多线程环境下使用Map,ConcurrentHashMap原理,ConcurrentHashMap如何加锁。
  7. 多线程并发的同步实现,有两个方法,每一个方法里有a部分代码和b部分代码,我要让两个线程分别执行两个方法,而且让他们运行完a部分代码再一块儿向下执行,如何实现。
  8. TCP链接中的三次握手和四次挥手,四次挥手的最后一个ack的做用是什么,为何要time wait,为何是2msl。
  9. aio,nio,bio的了解
  10. ReetrantLock和synchronized的区别。
  11. Java有哪些悲观锁的实现?
  12. Java有哪些类实现了乐观锁?

二面

  1. Spring两大特性?AOP和IOC
  2. Spring的初始化过程?Spring bean的生命周期?
  3. 多个RPC请求进来,服务器怎么处理并发呢?
  4. MySQL的索引实现原理?聚合索引和非聚合索引的区别?
  5. MySQL有哪几种join方式,底层原理是什么?
  6. MySQL的引擎讲一下,有什么区别,使用场景呢?
  7. 数据库的事务,四个性质说一下,分别有什么用?
  8. 常见的分布式事务解决方案有哪些?

三面

  1. 介绍项目,以及画相关的分布式架构图
  2. 数据库的备份和恢复怎么实现的,主从复制怎么作的,何时会出现数据不一致,如何解决?
  3. Netty的实现原理?
  4. Dubbo的实现原理?以及Netty和Dubbo的关系?
  5. 分布式下Redis如何保证线程安全
  6. Redis怎么作持久化?两种持久化的区别?
  7. MongoDB、Hbase、Memcached、Redis各自的应用场景和区别
  8. Docker平时怎么使用的?
  9. 并发mysql的场景,查询优化怎么作?
  10. 设计一个高并发高可用的架构方案,关键核心设计?

必考题和答案

 

答案获取方式

关注+点赞!mysql