滴滴-阿里,社招面试经历
-
公司做的项目,设计插件,
-
讲讲项目的架构,设计,数据流,ER 图
-
Redis 使用过吧,缓存击穿的解决办法,Redis 的数据结构有哪些,Redis 的主从结构,数据分片,一致性 hash
-
JAVA 基础,存放不相同的对象使用什么数据结构,引出对象的 hashCode 和 equals方法,HashSet 是用什么结构实现的;
-
HashMap 的冲突解决办法
-
HashMap 是不是线程安全的容器,如果并发访问了JDK 是怎么解决的
-
线程安全的容器 ConcurrentHashMap是怎么解决线程安全问题的,分段锁
-
悲观锁和乐观锁的区别,使用悲观锁有什么影响(线程中断,慢),乐观锁有什么好处
-
spring ,spring 的 IOC 是什么,怎么实现的,突然就有点不知道从何说起,讲了有依赖注入和依赖查找,说道了使用 spring 的注解,然后容器启动的时候加载这些注解所在的类,使用反射执行执行初始化就 OK 了
-
然后问到使用反射就可以加载一个 private 的成员吗,不能,需要设置权限
-
如何解决循环依赖呢,用一个 Map 把依赖存起来呗,如果有说明有循环依赖
-
平常自己通过哪些途径学习,答看文档,看博客
-
如果有一个主线程和很多个子线程,主线程需要等子线程运行完才能继续执行,你会用什么,CountdownLatch嘛
-
讲讲 GC,清除,整理,交换(survivor 区域),CMS 执行的过程
-
讲讲自己的希望未来做的事情,高并发场景和领域建模
-
讲讲领域建模,就是 DDD 的核心思想,实现起来就是在 Service 那一层使用充血模型
- 平常有自己写博客吗,不写笔记,996没时间写博客
-
java SPI机制实现 ?dubbo的spi有啥不同,为什么,有没有看过dubbo的源码,它的上下文可以讲一下吗,dubbo的泛化调用有了解吗?
-
如何提升系统稳定性? 业务监控,监控哪些内容?qps,rt,失败率。
-
限流降级熔断你是怎么使用的?
-
如何解决 本地事物成功,消息发送给消息队列成功,但是由于网络原因而没有收到成功的回复? 事务消息
-
concurrent hashmap 如何解决 并发插入桶的第一个元素的问题?
-
threadlocal的实现讲一下?如何将父线程的threadlocal变量传给子线程?
-
加锁的流程讲一下。Aqs的实现讲一下?
-
双重检验的单例实现,volatile解决了什么问题,只用synchronized关键字可以吗,为什么不可以?
-
数据库,MVCC的实现讲一下?多版本体现在哪里实现上是怎样的?B+树索引有了解吗?怎么解决不可重复读的问题?
-
分布式锁,如何解决锁超时未释放的问题
-
动态代理是实现是怎样的,字节码层面上是怎么实现的?
-
Gc相关,新生代,老年代相关的算法流程,为什么要这样使用?
-
spring 的上下文有了解吗,ioc的实现??di注入是怎么实现的??
-
cas是怎么实现的? 交换比较是哪个变量?
-
了解unsafe吗
-
有哪些是你熟悉的领域也可以讲讲?
二面
-
系统架构讲一下?数据流向?数据库设计 (ER 图)讲一下?如果一个商品列表要展示活动,如何设计的?
-
进程和线程的区别?多进程编程有了解吗?多线程编程要注意什么?共享变量,执行时序
-
MySQL 的主从同步机制?幻读是什么?
-
Redis 的主从同步机制?
-
使用 MySQL 的心得?加 limit, 执行计划,是否有排序,是否可以使用覆盖索引解决排序,不要将自增主键给外部
-
二叉树的层序遍历?
-
设计一个积分前 100 的排行榜?如果积分变更在不同的地方,如何让积分榜实时更新?发消息,监听 binlog
- 本地事务和发消息如何保证强一致性? 事务消息可解决
- 为什么会考虑离职?期望有个更好的平台来发展呗
- 二面面试官人很好,又问了些其他的,比如说公司有没有使用这些严格的机制,比如说事务消息,面试官答:工业界使用当然是越简单的机制越好,新技术可以学习,但是要引进实际生产一定要考虑其本身的复杂性,巴拉巴拉了好多