阿里P6+

第一轮

电话面试(基础知识为主,约2小时):

1,先自我介绍,包含日常工作

2,基础知识

​ 1)多线程(ThreadLocal(问了父子线程怎么共享数据 interitableThreadLocals)、lock和sync区别(问HashMap1.7、1.8区别时带出)、AQS原理(执行过程源码,入队出队的细节,源码细节)、CountDownLatch和CyclicBarrier的区别是什么源码级别、volatile从指令重排序,内存屏障,聊到总线风暴)所占比重较大

多线程汇总

​ 2)数据库(mysql索引(聚集索引、非聚集索引、索引结构(顺带会问各种树的特性)、执行计划、count1*区别、举例优化sql、MVCC和事务隔离级别的关系、间隙锁、行锁(和多线程混合问的,乐观锁悲观锁等)、唯一索引和普通索引的区别聊到了changeBuffer,聊了页分裂合页合并)比重较大

数据库汇总

​ 3)jvm调优(可达性分析算法中根节点有哪些、cms和G1区别、怎样GC调优、怎样排查CPU飙高、内存飙高、逃逸分析)

JVM汇总

​ 4)redis数据结构、跳跃表、redis qps能上多少,怎么知道的、sentinel和cluster区别和各自适用场景、redis cluster集群同步过程、redis单线程为什么快、多大叫大key、热key产生原因和后果以及怎么解决、本地缓存需要高时效性怎么办.....

Redis为什么快?你只知道单线程和基于内存?抱歉我不能给你offer...

面了6家大厂,我把问烂了的Redis常见面试题总结了一下(带答案)

大厂都喜欢这样问Redis,哨兵、持久化、主从、手撕LRU,我都整理好了

Redis面试题(2020最新版)

​ 5)spring的作用、spring循环依赖怎么解决(说出三级缓存源码细节)、spring aop原理(动态代理)、spring bean生命周期(源码细节,以及各个位置的设计思路,有什么可扩展的)

Spring面试题(2020最新版)

​ 6)dubbo服务暴露和引用过程,负载均衡策略,容错机制在哪里实现的源码

阿里面试官:你知道Dubbo的服务暴露机制么?

字节面试:dubbo的服务引用过程

Dubbo面试杀招--Dubbo集群容错负载均衡

​ 7)项目中碰到的问题。

​ 8)为什么换工作,如果通过会直接说有笔试题,和你确认笔试时间。

第二轮

笔试两道题,第一题写代码,第二题写技术方案,以查询为主,考察锁粒度、时间粒度上的细节点。

第三轮

电话面试(解决方案为主,约1.5个小时)

1,自我介绍、项目介绍

2,说到缓存穿透,让我设计一个防止缓存穿透的解决方案,简单的就是存null值,但肯定会深究,可以结合布隆过滤器,设计分布式系统,里面又会问到流量分发到具体过滤器服务的方式,比如一致性hash算法,怎么调用?比如dubbo直连、等等细节会边说边问。

3,有没有做限流,设计一个侵入性最小的限流服务。

4,项目中碰到的问题,最好说框架本身问题,能体现个人能力,也避免问题太低级被面试官看low,刚好之前有发现一个dubbo的bug,所以这问题应该回答的还可以。

5,为什么换工作,每轮都会问,这个得想好。

第四轮

电话面试(项目为主,40分钟,应该是交叉面,问的不算多)

1,介绍最熟悉的项目,业务上有没有什么优化点;和同行业其他公司的差距和优势(估计是P7的标准问题吧。。。我是没咋说好)

2,dubbo服务调用过程(说着说着说到服务暴露和引用上面,他直接说这个之前问过了。。不用重复说,所以面试应该有记录面试问题)

3,NIO、BIO区别,NIO解决了什么问题,Netty线程模型(源码拷问)。

Netty面试题(2020最新版)

4,MQ相关(RocketMQ、kafaka奇怪的是你写啥面试官问啥,面试官啥都会,技术广度深度令人发指)

消息中间件MQ与RabbitMQ面试题(2020最新版)

第五轮

电话面试(这位面试官比较较真,什么问题都会问具体数值,但和他挺聊得来的,向他请教阿里那边方案也会耐心指导,1.5小时)

1,项目介绍

2,听到说做了限流,限流标准(并发数? qps?并发数和qps关系?说出了5种限流方案和对应算法原理)

3,dubbo调用端怎么在jvm中生成对应服务?dubbo服务端和调用端超时时间设置和区别、dubbo长连接。

3,mysql行锁最大并发数?(秒杀项目指出)

MySQL数据库面试题(2020最新版)

面试必问干货!数据库索引和锁的知识!看完你就能拿offer

4,设计秒杀系统,我说的异步的方式,会问怎么优化?改为了同步的方式,异步和同步区别? 然后我也问了阿里那边

5,碰到哪些技术难点?怎么解决?有没有参考其他大厂?其他大厂方案什么样的?有没有关注阿里这边最新的技术?

6,刚刚的秒杀系统,会涉及到多个库表的更新,分布式事务怎么解决,我说的消息最终一致性,异步?有没有更好的方案?同步TCC方式,TCC方式原理?(三个阶段的具体实现)

面试官问我知道的分布式事务,我一口气说了六种

以上是技术面。

第六轮

主管视频面试:个人介绍、项目介绍为主,十五分钟结束。

第七轮

HR面试,项目介绍、职位介绍、离职原因、当前薪资,如果没什么问题,一天后会电话反馈待遇并确认是否接受。

不会问期望薪资是多少,后面会打电话告诉你评级是否接受,然后就开始安排体检了。

 

================================================================================================

 

面试阿里P6岗,需要掌握

  • Java集合:HashMap和ConcurrentHashMap,平时最好有读一些源码,最好知道每个参数为什么设置成这么大?有什么好处?

Java集合:HashMap,ConcurrentHashMap,HashTable

阿里面试官没想到一个ArrayList,我都能跟他扯半小时

  • JUC包肯定要学,即使平时的编程根本不用,也必须得会。至少要知道aba,cas,aqs,unsafe,volatile,sync,以及常见的各种lock,死锁,线程池参数等,也必须要明白自旋,阻塞,死锁和它如何去定位,oom如何定位问题,cpu过高如何定位等基本的操作,你可以没有生产调试经验,但不代表你可以不会top,jps,jstack,jmap这些可能会问的东西。以及可能衍生的jmm模型和mesi协议等。

阿里面试,问了我乐观锁、悲观锁、AQS、sync和Lock,这个回答让我拿了offer

  • 大厂必问JVM:垃圾回收算法,垃圾收集器、JVM内存模型,每个区域用途,各种oom的种类,jvm调优经验,类加载过程,双亲委派等。

JVM架构和GC垃圾回收机制(JVM面试不用愁)

深入理解Java虚拟机-垃圾回收器与内存分配策略

看完这篇JVM,阿里面试官都不怕!看完就能拿offer

  • Spring就得抽空看源码了,一般会问到bean的生命周期,如何解决循环依赖,实现事务原理,动态代理原理等。

Spring面试题(2020最新版)

  • Dubbo也是必须问的,设计框架,负载均衡。

阿里面试官:你知道Dubbo的服务暴露机制么?

字节面试:dubbo的服务引用过程

Dubbo面试杀招--Dubbo集群容错负载均衡

  • Redis更要多懂一点,单线程模型,aof,rdb,rewrite,主从,cluster,哪些类型?包含一些缓存常见的问题击穿、穿透、雪崩、数据一致性等。

Redis为什么快?你只知道单线程和基于内存?抱歉我不能给你offer...

面了6家大厂,我把问烂了的Redis常见面试题总结了一下(带答案)

大厂都喜欢这样问Redis,哨兵、持久化、主从、手撕LRU,我都整理好了

Redis面试题(2020最新版)

  • Mysql,事务,锁,索引,b+树,主从这些你必须会

MySQL数据库面试题(2020最新版)

阿里面试:MySQL索引凭什么能让查询效率提高这么多?

【数据库调优】屡试不爽的面试连环combo

  • Mq ,我用的rocketmq,你得知道为什么用,重复消费,顺序消息,事务消息,高可用,消息丢失,挤压场景,整个消息发送消费的流程,读过源码更佳,更好吹

消息中间件MQ与RabbitMQ面试题(2020最新版)

  • Netty的话,零拷贝,bio,nio,aio,架构设计怎么样子的?用过看过更好

Netty面试题(2020最新版)

  • 算法,建议去刷题,我运气好,简单的算法让我碰到了,一些快排,堆排,二叉树相关的,链表反转,成环,环节点,跳楼梯等常规的简单算法建议刷刷,双指针,dp,递归这些还是多找找感觉,大数据内存有限的场景的统计,有时间一些middle可以去试试,手写红黑树你要是可以,那我估计算法你稳了。
  • 网络,http,tcp,https,udp,7层网络协议等,最好结合自己理解,背,你都要背下来。

重学TCP/IP协议和三次握手四次挥手

  • 还有就是一些分布式事务实现,架构实现,比如抢红包,高并发下单等常规的场景设计,你来设计,你怎么去设计?多找一些大牛或者上网自己查,帮你看看有哪些漏洞,有哪些解决方案?业界有哪些好的中间件?

阿里一面:

  • 自我介绍、自己做的项目和技术领域
  • 说一下sync的底层实现,锁优化,和lock的对比
  • 讲一下JVM参数调优详细过程
  • 为什么这么设置?好处是什么?描述gc场景,如何去分析gc日志?

Java虚拟机(JVM)面试题(2020最新版)

JVM架构和GC垃圾回收机制(JVM面试不用愁)

深入理解Java虚拟机-垃圾回收器与内存分配策略

看完这篇JVM,阿里面试官都不怕!看完就能拿offer

  • redis数据结构,使用场景,微博场景使用redis如何去设计用户关系?
  • 线程池参数设定,为什么这么设定,作用?7大参数
  • spring的循环依赖如何解决?为什么要三级缓存?
  • 优先级队列的底层原理?

阿里二面:

  • 自我介绍一下吧
  • 聊项目
  • 结合你项目问你如何设计,提出漏洞,你怎么解决?如何改进,万一挂了?加一台机器有没有问题?如果我非要不出问题怎么办?
  • 高并发下单扣库存场景如何设计
  • rocketMQ架构设计原理
  • Dubbo框架实现原理
  • 最近读了什么书?平时怎么学习?
  • 常用的负载均衡,该怎么用,你能说下吗?

阿里三面:

  • 这一面主要问项目,给你的压力感比较强
  • 结合项目问,为什么这么设计?让你去优化,你怎么优化,引导你用一个合理的更好的方式去优化,数据库的设计等
  • 在公司做了什么事情,各个系统业务线都是做什么的,你的绩效,手写算法链表反转?

阿里四面:

  • JVM的主要组成部分及其作用?
  • JVM运行时数据区包含哪些?
  • JVM垃圾回收机制,何时触发MinorGC等操作
  • JVM的垃圾回收算法:
  • JVM 调优的工具?
  • 常用的JVM调优参数?
  • 堆栈的区别?
  • 详细介绍一下 CMS 垃圾回收器?
  • 怎么判断对象是否可以被回收?
  • 新生代垃圾回收器和老生代垃圾回收器都有哪些?有什么区别?

Java虚拟机(JVM)面试题(2020最新版)

JVM架构和GC垃圾回收机制(JVM面试不用愁)

深入理解Java虚拟机-垃圾回收器与内存分配策略

看完这篇JVM,阿里面试官都不怕!看完就能拿offer

  • java类加载过程?
  • 把你知道的中间件都说一下吧(瞬间懵了一下)

HR面:

  • 为什么来阿里?
  • 之前没考虑过阿里吗?
  • 毕业这么久了,你觉得自己最大的改变是什么?
  • 用一句话总结一下自己
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值