膜拜!非科班出身7面阿里后端开发岗成功拿到offer,附上自己的面经以及复习资料!

166 篇文章 3 订阅
159 篇文章 3 订阅

前言

楼主大三,现在在美团实习,春招投阿里面试热热身。

2021年2月25日 周四 部门C 一面(通过)

  • RPC调用的过程
  • 项目中遇到的困难
  • 实习慢SQL调优
  • 什么是死信和延迟队列
  • 使用的业务场景?
  • 类加载过程
  • 啥时候破坏双亲委派
  • 线程类加载器实现原理
  • HashMap数据结构,插入过程,扰动函数
  • ConcurentHashMap如何保证线程安全
  • synchronized
  • new一个对象的过程
  • JVM内存模型
  • MinorGC和FullGC发生场景
  • 新生代对象啥时候晋升老年代
  • TCP三次握手四次挥手
  • Time_wait的作用
  • 为啥握手是三次而挥手是四次
  • MySQL中索引的数据结构
  • B+树和B树区别
  • BeanFactory和FactoryBean的区别
  • Spring如何解决循环依赖
  • SpingIOC注入对象过程
  • Spring三级缓存机制
  • 消息队列如何保证消息被消费到
  • 如何检测网络抖动导致的数据丢失
  • 大数据量查询如何优化效率
  • 分库分表的设计思路
  • 线程池处理任务的过程
  • 四大拒绝策略
  • AOP的实现原理

2021年2月26日 周六 部门A 一面(通过)

  • 慢sql优化

  • 介绍消息队列整体架构

  • 死信队列,延迟消费(如何实现延时策略,多次失败控制)

  • 如何保证消息消费的幂等性

  • 如何保证分布式系统中数据库插入的幂等性

  • 介绍跳表数据结构

  • redis为啥用跳表不用B+树

  • 如果让你设计一个服务注册中心,怎么设计

  • 追问:服务注册信息的拆分要怎么做,如果注册中心服务器宕机怎么保证高可用,服务注销怎么实现

  • Netty中的select过程

  • Netty为啥效率高(零拷贝,线程模型)

  • 零拷贝讲讲(mmap优化,sendfile)

  • TCP拥塞控制(慢启动,快速重传,快速恢复)

  • SpringBoot启动过程

  • 算法 LC30(hard)的加强版

  • 算法 反转双向链表

  • 反问,部门偏业务还是技术

2021年2月26日 周六 部门B 一面(通过)

  • 慢sql优化
  • 如果起十个线程收集数据,其中一个卡住了咋办
  • RPC调用中服务注册怎么做的
  • 服务注册怎么进行服务注销监听
  • 服务注册中心的功能除了放在额外的服务器上实现还能放在哪里?怎么实现
  • RPC调用中如果出错怎么处理
  • RPC框架写了多少行
  • 在美团实习写代码写了多少行
  • 在美团实习有啥收获
  • 讲讲sychronized(偏向锁,锁升级,轻量级锁,锁膨胀,批量重偏向,对象头中epoch字段的作用,锁消除)
  • 讲讲volatile(可见性怎么保证,有序性怎么保证,内存屏障LL,LR,RR,RL,CPU缓存行,lock汇编指令)
  • 反问,部门业务
  • 你微信号多少,以后多交流(还有这操作?)

2021年2月28日 周日 部门B 二面(通过)

  • RPC调用中使用随机算法和轮转算法做负载均衡的优缺点
  • RPC调用中服务器宕机之后发生了什么
  • RPC服务注册和服务发现服务注销怎么做的
  • RPC心跳怎么实现的,是服务端给服务注册中心心跳还是服务端给客户端心跳
  • 讲讲MQ了解多少
  • MQ中如何保证消息消费的幂等性
  • MQ能保证不出现重复消息吗
  • 项目中的MQ怎么保证幂等性的
  • 实习慢SQL调优介绍下
  • 这样做有啥问题
  • 如果让你再优化呢
  • Java中什么时候会出现线程不安全
  • Java中的锁有哪些
  • 锁的状态?
  • ConcurrentMap解决了HashMap的什么问题
  • 讲讲ConcurrentMap
  • 讲讲JVM中的堆的分区和作用
  • 智力题1:3点15分时针分针夹脚
  • 智力题2:一个3升的桶,一个5升的桶,隔4升的水,要求两种方法
  • 结束:我觉得你基础不错,表达能力不错,也有自己的思考,但是实践经历还是比较欠缺,这边面试通过了,其他的等系统开了之后再跟进吧

2021年3月1日 周一 部门C 二面(通过)

  • 对TCP/IP协议的了解

  • 假设有个包到达服务器网卡之后发生了什么(回答:报头的波形同步时钟,起始帧分界符,MAU模块,MAC模块,检查FCS,知计算机收到了一个包)

  • 打断+追问:网卡如何通知计算机收到包(回答:扩展总线,中断信号线,中断控制器,中断处理程序,网卡的驱动程序)

  • 打断+追问:中断处理程序怎么知道调用网卡的驱动程序,不同中断有啥区别(回答:硬件的中断号和相应的驱动程序绑定)

  • 对于高并发场景怎么处理(开始介绍Netty…)

  • 介绍NIO

  • 介绍Reactor

  • 介绍Proactor(不记得了…)

  • 为啥要用异步IO不用多线程,不是一样可以加速吗?

  • 如果让你设计一个RPC框架,要设计啥(服务注册中心,负载均衡,无感调用,服务注销)

  • 如果服务调用过程中服务器突然宕机怎么处理?(答服务注销钩子,心跳检测,二次请求)

  • 追问,如果插入5个数据,插入完第一个服务器宕机了咋办?(答思路,和服务注册中心维护一个执行偏移量,然后从偏移点继续执行)

  • 追问,如果连偏移量都还没来得及同步呢(die了,不会)

  • 实习工作中的产出

  • 慢sql优化?

  • 如何解决数据groupby的时候哈希不均衡问题(答:定时任务定时捏合数据,追问,只从sql层面,凉。。。)

  • 反问:如何学习上述没答出来的问题?(多实践,多看源码)

  • 反问:今天面试表现如何?(整体还是ok的,可以看出在很多地方有自己的思考)

  • 追问:讲实话,如果我给你通过了,你来我们这里的概率有多大?

2021年3月2日 周二 部门A 二面(通过)

  • 实习过程中的产出

  • 在校期间的项目

  • 线上问题怎么排查

  • 平时咋学习的

  • 长达40分钟的反问时间

  • 反问1.如何在面试中拿到更高的评级

  • 反问2.如何学习

  • 反问3.如何解决数据groupby的时候哈希不均衡问题?

  • 反问4.后续面试有啥准备的建议

  • 反问5.工作中如何更好的提升自己

  • 后续的部门交叉面试保持联系

2021年3月3日 周日 部门B 三面(通过)

纯做题

  • 算法:最大回文子串
  • 算法:判断回文串
  • 算法:快速排序

总结

在文章的最后作者为大家整理了很多资料!包括java核心知识点+全套架构师学习资料和视频+一线大厂面试宝典+面试简历模板+阿里美团网易腾讯小米爱奇艺快手哔哩哔哩面试题+Spring源码合集+Java架构实战电子书等等!

全部免费分享给大家,只希望你给作者点个三连!
如果有需要的朋友三连后点击这里csdn,自行下载

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值