快手Java暑期实习面经
🤔部门:快手支付中台
----
一面
时间:1h
1.问实习,觉得实习难点在哪,自己成长最多的地方
2.Redis中的string底层结构是什么,zset底层结构是什么,跳表的查询复杂度
3.线程池的核心参数如何设置,cpu利用率如何计算,cpu的负载是什么
4.介绍一下AQS,加锁和释放锁的流程是什么,底层为什么要使用用双向链表,Synchronized的加锁和释放锁的流程,等待队列和阻塞队列的区别,使用notify后会发生什么
5.问看过spring源码吗
6.介绍一下Raft,Raft怎么保证强一致性的
7.zookeeper使用的一致性算法和Raft有什么区别
8.说一下对分布式事务的理解,什么情况下需要使用分布式事务,本地消息表如何保证最终一致性的
9.手撕:快排 + 多线程循环打印ABC
----
二面:
时间:40min
1.实习介绍
2.使用Redis做幂等,会出现什么样的不一致的情况
3.Kafka消息的可靠性是如何保障的
4.Kafka消息底层是如何存储的,Kafka怎么保障消息分区有序的
5.使用Kafka的话,怎么保证写DB和发消息的一致性,使用本地消息表的话本地事务是如何保证的,Transactional注解底层是如何实现的,Transactional内部调用失效的原因以及如何解决
6.讲一下MySQL的意向锁
7.讲一下JD hotkey的整体架构,如何统计热key的
8.简单说下共享单车扫码开锁是怎么一个流程
9.手撕:换了两次题,1.丢n次骰子,求和为k的概率(不会)2. LC1044 最长重复子串(不会)3.组合总数
----
HR面
常规问题
----
oc(已接)
----
一面
时间:1h
1.问实习,觉得实习难点在哪,自己成长最多的地方
2.Redis中的string底层结构是什么,zset底层结构是什么,跳表的查询复杂度
3.线程池的核心参数如何设置,cpu利用率如何计算,cpu的负载是什么
4.介绍一下AQS,加锁和释放锁的流程是什么,底层为什么要使用用双向链表,Synchronized的加锁和释放锁的流程,等待队列和阻塞队列的区别,使用notify后会发生什么
5.问看过spring源码吗
6.介绍一下Raft,Raft怎么保证强一致性的
7.zookeeper使用的一致性算法和Raft有什么区别
8.说一下对分布式事务的理解,什么情况下需要使用分布式事务,本地消息表如何保证最终一致性的
9.手撕:快排 + 多线程循环打印ABC
----
二面:
时间:40min
1.实习介绍
2.使用Redis做幂等,会出现什么样的不一致的情况
3.Kafka消息的可靠性是如何保障的
4.Kafka消息底层是如何存储的,Kafka怎么保障消息分区有序的
5.使用Kafka的话,怎么保证写DB和发消息的一致性,使用本地消息表的话本地事务是如何保证的,Transactional注解底层是如何实现的,Transactional内部调用失效的原因以及如何解决
6.讲一下MySQL的意向锁
7.讲一下JD hotkey的整体架构,如何统计热key的
8.简单说下共享单车扫码开锁是怎么一个流程
9.手撕:换了两次题,1.丢n次骰子,求和为k的概率(不会)2. LC1044 最长重复子串(不会)3.组合总数
----
HR面
常规问题
----
oc(已接)
全部评论
接好运
相关推荐

点赞 评论 收藏
分享
点赞 评论 收藏
分享