阿里巴巴开发岗社招面经(三面、四面)
三面
1.线程有哪些状态,等待状态怎么产生,死锁状态的变化过程,中止状态,interrupt()方法
2.你怎么理解线程安全,哪些场景会产生线程安全问题,有什么解决办法
3.mysql多事务执行会产生哪些问题,怎么解决这些问题
4.分库分表做过么,怎么做到不停机扩容,双写数据丢失怎么办,跨库事务怎么解决
5.你们用的redis集群么,扩容的过程,各个节点间怎么通信的
6.对象一定分配在堆上么,JIT,分层编译,逃逸分析
7.es的写入,查询过程,底层实现,为什么这么设计
8.es集群,脑裂问题,怎么产生的,如何解决
9.while(true)里面一直new thread().start()会有什么问题
10.socket了解么,tcp和udp的实现区别,不了解,用的不多
11.设计一个秒杀系统能承受千万级并发,如果redis也扛不住了怎么办
项目介绍
四面
1.讲讲你最熟悉的技术,jvm,mysql,redis,具体哪方面
2.new Object[100]对象大小,它的一个对象引用大小,对象头结构
3.mysql主从复制,主从延时怎么解决
4.怎么保证redis和mysql的一致性,redis网络原因执行超时了会执行成功么,那不成功怎么保证数据一致性
5.redis持久化过程,aof持久化会出现阻塞么,一般什么情况下使用rdb,aof
6.线上有遇到大流量的情况么,产生了什么问题,为什么数据库2000qps就撑不住了,有想过原因么,你们当时怎么处理的
7.限流怎么做,如果让你设计一个限流系统,怎么实现
8.dubbo和spring cloud区别,具体区别,分别什么场景使用
9.给了几个场景解决分布式事务问题
项目介绍
你觉得你们的业务对公司有什么实际价值,体现在哪,有什么数据指标么
#面经##社招##阿里巴巴##Java工程师#