蚂蚁花呗Java开发岗:算法+SpringCloud+SpringBoot+Redis+MySQL_Java开发

自我介绍

map怎么实现hashcode和equals,为什么重写equals必须重写hashcode

使用过concurrent包下的哪些类,使用场景等等。

concurrentHashMap怎么实现?concurrenthashmap在1.8和1.7里面有什么区别

CountDownLatch、LinkedHashMap、AQS实现原理

线程池有哪些RejectedExecutionHandler,分别对应的使用场景

多线程的锁?怎么优化的?偏向锁、轻量级锁、重量级锁?

组合索引?B+树如何存储的?

为什么缓存更新策略是先更新数据库后删除缓存

OOM说一下?怎么排查?哪些会导致OOM?

OSI七层结构,每层结构都是干什么的?

java的线程安全queue需要注意的点

死锁的原因,如何避免

二面

jvm虚拟机老年代什么情况下会发生gc,给你一个场景,一台4核8G的服务器,每隔两个小时就要出现一次老年代gc,现在有日志,怎么分析是哪里出了问题

数据库索引有哪些?底层怎么实现的?数据库怎么优化?

数据库的事务,四个性质说一下,分别有什么用,怎么实现的?

服务器如何负载均衡,有哪些算法,哪个比较好,一致性哈希原理,怎么避免DDOS攻击请求打到少数机器

volatile讲讲

哪些设计模式?装饰器、代理讲讲?

redis集群会吗?

mysql存储引擎

事务隔离级别

不可重复度和幻读,怎么避免,底层怎么实现(行锁表锁)

三面

项目介绍

分布式锁是怎么实现的

MySQL有哪几种join方式,底层原理是什么

Redis有哪些数据结构?底层的编码有哪些?有序链表采用了哪些不同的编码?

Redis扩容,失效key清理策略

Redis的持久化怎么做,aof和rdb,有什么区别,有什么优缺点。

MySQL数据库怎么实现分库分表,以及数据同步?

单点登录如何是实现?

谈谈SpringBoot和SpringCloud的理解

未来的技术职业怎么规划?

为什么选择阿里?