阿里云初面问题分析
最近有同学找我分享了他的阿里补录面试经验,并和他做了一些技术点的讨论,这里将面试问题分享给大家。大家关于这个面试问题有不了解的,可以先自己Google看下,还是不理解的话可以找我讨论
组件
- 问对哪个项目熟悉,为什么想要用java去写关系型数据库?
- 可重复读,已提交读,这两个隔离级别表现的现象是什么,区别是什么样的?
- 数据管理里,数据文件大体分成哪几种数据文件?
- 说下MVCC机制的原理?
- 索引的类型有哈希索引,B+树索引,而hash索引的时间复杂度是o1,那为什么我们一般情况下不使用哈希索引,而使用b+树索引呢?
- 对一个慢sql怎么去排查?如果是我们接口访问慢了呢,你有哪些排查思路?
- 为什么Mysql不用SkipList作为索引数据结构
- Redis的主从复制了解吗?会存在数据丢失问题吗?那Mysql就一定能保证数据不丢失?
Java
- MyBatis运用了哪些常见的设计模式?
- Java的继承思想你觉得在编程中有什么缺陷?
- MyBatis中创建了一个Mapper接口,在写一个xml文件,java的接口是要实现的,为什么这没有实现呢?
- 与传统的JDBC相比,MyBatis的优点?
- 还记得JDBC连接数据库的步骤吗?
- 如果让你设计一个SpringIoc,你觉得会从哪些方面考虑这个设计?
- Spring给我们提供了很多扩展点,这些有了解吗?
- SpringAOP主要想解决什么问题
- 代理模式和适配器模式有什么区别?
- 使用多线程要注意哪些问题?
- 那保证数据的一致性有哪些方案呢?
- 线程池有了解吗?线程池大概的原理?
网络
- http协议的报文的格式有了解吗?
- TCP三次握手有什么问题吗
- 那TCP的拥塞控制有什么缺陷吗,如何优化
微服务
- 微服务部署理念有什么问题?单体架构一定就不好吗
- 在数据的可靠性保障上你有哪些想法?双主写的话会导致什么问题?
- ShardingJdbc的客户端和代理模式各自有什么优缺点?
其他
- 读书中遇到最难的技术是什么,怎么克服的?
- 有没有什么强项在面试中还没有展现的?
- 反问
总结
问的还是很全面,有些问题是跟实际开发相关的,如组件中问题6;Java中的问题2、4、5、7、10;微服务中的3。有些问题不是只问概念和原理实现,还会考察在选型、对比以及宏观体系中的作用,看你平时有没有思考和积累,如组件中问题5、7、8;Java中的6;网络中的3;微服务中的1、2。
现在大厂的面试不可能再靠背背八股文就蒙混过关了,大家还是需要多花点时间思考、多参与项目实践
#面经##校招#