阿里一面
- 自我介绍
- 链表,数组的优缺点,应用场景,查找元素的复杂度
- 二叉树怎么实现的
- Java中都有哪些锁
- 可重入锁的设计思路是什么
- 乐观锁和悲观锁
- synchronized机制
- hashmap原理,处理哈希冲突用的哪种方法(拉链)
- 还知道什么处理哈希冲突的方法(开放地址检测)
- 开放地址检测怎么实现的
- 从哈希表中删除一个元素,再加入元素时恰好与原来那个哈希冲突,这个元素会放在哪
- 并发容器,Hashtable和concurrenthashmap区别
- redis原子操作怎么用比较好
- 消息队列用过哪些?
阿里二面
操作系统模块:
1、说一下并行和并发的区别
2、你知道进程吗?有进程为何还有线程?
3、操作系统是如何调度进程呢的
4、比如linux下我打开一个文件调用read函数,整个过程说的越细越好
5、同步异步阻塞非阻塞IO详细越好。
网络模块:
- TCP报文格式
- TCP和UDP
- 拥塞控制
- 超时重传
- 三次握手
- 滑动窗口
- 常见协议的端口号
数据库模块:
- 索引数据结构
- 索引常见优化方案
- 存储引擎
- 事务(spring框架如何实现事务的呢)
- 垂直拆分
- 分库分表
- 读写分离
Java模块:
- hashmap
- Arraylist和linkedlist
- voliate
- 线程池,如何根据CPU的核数来设计线程大小,如果是计算机密集型的呢,如果是IO密集型的呢?
- countdownlatch和CyclicBarrier底层实现原理
- 线程状态以及API怎么操作会发生这种转换
JVM模块
面试官说只问三个问题:
1、内存模型以及分区,需要详细到每个区放什么
2、堆里面的分区:Eden,survival ,老年代,各自的特点。
3、垃圾回收算法,什么时候回收。
分布式:
1、redis与memached选型,你更倾向于选择哪个,为什么?
2、分布式事务解决,你知道我们阿里巴巴是怎么做的吗?
3、消息队列比较和选型?
5、CAP
阿里三面
- 自我介绍
- 学习技术的方式,开源、书籍、自学、实践,具体的学习方法?
- 最有技术含量的项目,讲讲从架构设计再到部署的流程
- 常见的数据库瓶颈有哪些,怎么来优化
- 微信附件人这个功能怎么实现的
以上就是阿里三面题目,以下是总结出来的阿里经典面试题目,包含:集合类、多线程、JVM、spring框架、分布式缓存、架构设计等。
阿里高级java经典面试88题和答案
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
2018-05-28 读:刘未鹏|我在南大的七年
2018-05-28 分布式之redis复习精讲
2018-05-28 JAVA多线程17个问题