关于面试:一名死磕阿里的程序员分享我的阿里Java实习十轮面试面经

3次阅读

共计 5289 个字符,预计需要花费 14 分钟才能阅读完成。

写在后面

自己双非本科大三,业余是微电子迷信与工程,学过一点点 Java,我的项目是纯 CRUD 我的项目,未接触过 RPC 我的项目,上面是阿里四个部门的面经,让大佬们见笑了

2.24 淘宝购物车预面 64 min (过)

自我介绍

学校的学习和实习的工夫是怎么调配的?

实习的我的项目做了什么? 遇到的难点?

在实验室做的我的项目遇到的难点?

JPA 和 MyBatis 的区别? 讲一下对象字段映射的细节

MySQL 各种索引的一些差别

什么是聚簇索引? 什么是非聚簇索引?

Innodb 是怎么保障解体恢复能力的?(两阶段日志提交)

Innodb 的优缺点?(围绕索引数开展讲)

索引笼罩? 回表? 惟一索引? 非惟一索引? 最左准则?

explain 外面有哪些字段?

一个 SQL 查问很慢, 从哪些地方进行优化?

自增 ID 和 UUID 的区别?(叶决裂)

自增 ID 申请完了会产生什么事件?

分库解决了什么问题? 分表解决了什么问题?

你感觉学 Java 须要具备哪些根本条件? 哪些地方特地重要?

七层网络模型

为什么有了七层还有五层的概念?

JVM 内存模型(概述)

讲讲双亲委派, 为什么?

你感觉双亲委派这个名字有没有什么问题? 你讲讲本人的了解

突破双亲委派的例子, 举个例子? 怎么突破?

你当初用什么 GC 收集器?

Eden 区的对象回收策略?

CMS 的 STW 状况?

CMS 什么状况会触发 Full GC?

新对象肯定会在新生代 new 进去么?

Java8 有什么新的 GC 算法?

理解 G1 收集器么?

考研么? 为什么当初的实习想到职了?

Golang 和 Java 的区别?

反诘: 有什么须要进步的?

2.25 淘宝购物车一面 50 min (过)

上一次面试问了些什么问题?

啥时候过去实习?

挑一两个你实习或者我的项目当中遇到的难题? 讲一讲怎么解决的?

我的项目当中的代码你有没有想过有一些中央能够优化?

哪些状况会呈现 OOM?

堆中内存分配比例?

新生代 GC 工作流程?

为什么新生代年龄是 15 次进入老年代?

大对象进入老年代, 这个大对象是有多大?

怎么排查 OOM?

你当初用过哪些中间件?

RPC 理解么?

RPC 解决了当初的哪些问题?

有没有想过把你的我的项目革新成 RPC?

IOC 的初始化流程?

AOP 是怎么和 IOC 做整合的?

循环依赖怎么解决?

我的项目怎么分层的?

JPA 和 MyBatis 做对象映射的区别? 原理?

数据库热点查问的数据, 怎么做性能优化?

Innodb 的索引树数据结构?

最左准则?

有没有其余简单的我的项目?

排查问题的伎俩, 你目前晓得哪些?

讲讲你的劣势?

3.04 钉钉一面 72 min (过)

自我介绍

介绍一下我的项目和实习

你对 RPC 的了解?

HTTP 和 RPC 的关系? 区别?

RPC 的长处?

任何一个申请过去都会打到注册核心么?

对于我的项目和实习的一些问题

HDFS 理解么?

Java 的流式解决理解么?

SpringMVC 解决申请的一个流程?

Servlet 的监听器和拦截器?

有哪些办法能够拦挡一个 HTTP 申请?

对于承受申请的参数, 你有没有一套本人总结的办法?

在学校还做过哪些项目?

你感觉学 Java, 最重要的是什么?

你对 IOC 的了解?

AOP 的各种实现有什么差别?

为什么会有多种代理的形式?

HTTPS 的秘钥替换过程?

有中间人劫持则么办?

双亲委派的了解?

为什么有双亲委派? 肯定要遵循双亲委派么?

怎么突破双亲委派?

有一个线程要期待其余线程执行完再执行?

有一个线程要期待其余线程都就绪再执行?

程序打印 ABC?

Innodb 索引的数据结构? 为什么用 B+ 树?

100 瓶药一瓶毒药. 懂得都懂.

海量数据取前 5.

3.04 业务中台一面 52 min (过)

自我介绍

有没有面其余的部门?

介绍一下本人的实习我的项目?

对于我的项目的一些问题

你感觉实习做的事件还有没有什么能够优化的?

为什么 TX 用 Golang?(我怎么晓得?)

DNS 解析流程?

怎么解析一个域名? 解析一个域名须要哪些信息?

为什么用 Nginx?

你感觉 Nginx 在你的我的项目中最大的作用是什么?

HTTPS 的秘钥替换过程?

你感觉应用了 HTTPS 之后还会呈现问题么? 呈现问题了怎么办?

外挂的 Tomcat 和 SpringBoot 内嵌的 Tomcat 有什么区别?

Tomcat 的设计模式理解么?

SpringBoot 怎么调起 Tomcat?

你对 IOC 的了解?

理论开发当中你哪些地方应用了 Bean 的前置后置处理器?

AOP 是怎么和 IOC 进行整合的?

Spring 怎么把 Java 对象初始化成 SpringBean 的?

HashMap 八股文讲讲?

哪些状况下会产生 Full GC?

办法区的大小怎么设置?

栈大小怎么设置?

你遇到过堆栈溢出的状况么? 怎么解决的?

MySQl 主从集群怎么搞?

Binlog 有几种? 区别是什么?

3.05 业务中台二面 75 min (过)

面试官上来花了 10 分钟介绍了他们部门

对于 Github 下面的我的项目的问题(这个代码是大二上期写的)

我的项目当中的数据库设计, 你是怎么做的?

我的项目怎么分层的?

流量打到 SpringMVC 下面之后的解决流程?

微信小程序登录的流程?

JS SDK 登录和后端申请微信服务器登录的区别?

你感觉微信登录取得的 raw 信息能够被黑客劫持么?

你应用过分表么? 分库分表别离解决了什么问题?

分表的时候, 怎么设计主键?

本人的我的项目当中, 用到自定义索引的状况?

最左准则? 联结索引?

为什么会有最左匹配准则?(依据 B+ 树排序规定去答复)

为什么应用 B+ 树? 回表? 怎么缩小回表?

数据库的乐观锁和乐观锁?

读锁和写锁的区别?

假如当初有一个需要, 须要在一个 for 循环外面间断 100 次去更新一个行记录, 这个过程中会呈现阻塞的状况? 怎么应用编码的形式来躲避这种状况?(手动继承 AQS)

怎么敞开长事务?

为什么想来阿里?

微服务实例是怎么暂停的? 理解么?

对于实习和我的项目的一些问题

线程池 7 个参数的含意?

线程池提交工作的流程?

对分布式的理解有多少?

3.05 钉钉二面 50 min (过)

这轮面试忘了录音了, 有些问题不记得了.

对于我的项目和实习的一些问题.

一个分布式部署的我的项目? 至多须要哪些模块?

任何一个流量打过去都会打到注册核心么?

一个注册核心, 至多须要具备哪些条件?

有一大批流量总是被打到一个实例下面, 这个实例的兄弟实例分到的流量很少, 怎么办?

有一个实例挂了怎么办?

注册核心集群的时候, 其中一个注册核心挂了怎么办?

平时通过哪些渠道学习?

看过哪些博客?

你感觉美团的博客下面有哪几篇对你帮忙特地大?

而后具体谈了谈这一篇博客

你看视频个别在哪儿看? 看那些类型的视频?

能给我举荐一个对于技术的公众号么?

你有看过阿里的一些技术博客么? 你感觉他们写的博客对你有没有帮忙?

剩下的八股文问题不记得了 …..

3.05 淘宝购物车二面 60 min (过)

这一轮面试也忘了录音了 ….

自我介绍

对于我的项目和实习的一些问题

HashMap put 外面曾经有 100000 个数据了, 往里面 put 第 100001 个数据会不会扩容?

你感觉采纳链表加红黑树的组合形式之后解决了什么问题?

那么多数据结构, 为什么偏偏应用红黑树?

红黑树的均衡怎么做?

链表转化成红黑树的阈值怎么算进去的?

为什么红黑树缩回链表的阈值和进化的阈值不一样?

当初用编码的形式进行代码同步, 有哪些办法?

偏心锁和非偏心锁的实现(AQS 八股文)

volatile 的个性?

一个 volatile 变量, 一个线程写, 多个线程读会不会呈现线程不平安的问题?

IOC 的初始化流程?

Java 的类加载过程?

为什么会有 TIMEWAIT 这个状态?

拥塞管制? 流量管制?

10000 亿条淘宝订单, 每条订单当中蕴含了一个交易流水, 流水外面有商品的 ID, 有购买数量, 同一个商品在这个订单会呈现屡次, 当初要统计销量最好的 10 件商品.

能记起来的就这些 …..

3.06 新批发场景金融一面 70 min (过)

为什么不找硬件相干的实习来做软件?

能给我介绍一下微电子迷信与工程这个业余是干什么的么?

你是怎么学习软件开发的这些货色?

对于实习和我的项目的问题

讲讲面向对象的一些个性?

Java 7 大准则?

面向过程和面向对象的区别?

对象和类的关系?

Java 容器八股文

HashMap 八股文

过程和线程的区别?

Java 创立线程的形式?

线程池参数和工作提交到执行的过程?

对于线程池参数的设定, 你有没有本人的一套计划?

代码的同步怎么做?

Java 的类加载过程? 什么时候回触发到 Java 类的加载? 什么时候回触发类的卸载?

双亲委派? 突破双亲委派?

重载和重写在 JVM 层面是怎么甄别的?

JVM 当中的办法内联?

MySQL 中的事务是怎么实现的?

隔离级别的区别? 都是怎么实现的?

事务数组是什么? 高水位指的是哪些? 低水位指的是哪些?

Innodb 索引数据结构? 阿巴阿巴

SQL 语句执行流程? 分析器优化器执行器都是什么?

回表? 索引下推?

IOC 的初始化流程?

为什么会有 SpringBoot 的呈现?

讲讲主动拆卸?

你更偏向于 MyBatis 还是 JPA?

这两个 ORM 的实现和区别?

问我的项目 ….

问实习 …

你的大学生存, 工夫个别是怎么安顿的?

你感觉你本人的大学生存空虚么?

个别采纳哪些形式学习?

B 端业务和 C 端业务你更偏向于哪种?

3.06 新批发场景金融二面 110 min (过)

自我介绍

本业余的问题怎么样?

挂过科么? 为什么会挂科? 能不能总结一下这一次挂科?

JVM 内存模型概念?

你对办法区 / 元空间的了解?

堆中内存的调配?

永恒带会波及到 GC 回收么?

程序运行的时候, 怎么监控内存应用状况?

程序运行的时候, 怎么看堆栈信息?

Java 类加载的过程?

魔数是什么?

为什么叫双亲委派? 你有没有感觉这个名字怪怪的?

在一个类中调用了另一个类的公有办法能不能通过编译?

ClassNotFoundException 呈现在哪些地方?

如果说当初有一个 可执行的 A.jar 和 B.jar, 他们都相互援用了对方, 当初 B.jar 外面的某些类曾经不在了,A 还能启动么?

ldc,iconst,getstatic,ACC_FLAG 这几个指令都是什么意思?

IOC 的个性? 你对 IOC 的了解?

咱们本人也能够实现 IOC 和 AOP, 甚至是前置后置处理器, 为什么还要用 Spring 提供的?

怎样才能晓得 Spring 的 IOC 容器曾经齐全初始化了?

事件订阅的接口名字是什么?

为什么我会问这个问题? 为什么咱们须要晓得 Spring IOC 容器的初始化进度?

Spring 的后置处理器接口名字是什么?

AOP 和 IOC 的整合流程?

AOP 是怎么做动静代理的?

CGLIB 是怎么操作字节码的?

ASM 操作字节码的原理?

XML 的两种解析策略? 两种有什么差别?

线程池参数?

工作提交到线程池之后会遇到哪些状况?

用银行取钱的例子给我讲讲线程池?

sync 对应的字节码是什么?

sync 锁静态方法和非静态方法锁的别离是什么对象?

为什么锁的对象不一样?

为什么应用 Maven?

一个 a.jar 援用了 c, 版本是 1.0.0,b.jar 援用的 c 版本是 2.0.0, 一个我的项目当中同时依赖了 a 和 b, 这时候依赖的 c 版本是哪一个? 为什么?

Maven 仲裁策略有几步?

数据库的事务个性?

隔离级别的差别? 为什么会有这种差别?

讲讲可反复读和读提交隔离级别和实现机制?

什么是 ” 以后读 ”?

为什么我的项目当中要应用缓存?

为什么 Redis 这么快?

Redis 的长久化机制?

在生成 RDB 的过程当中, 还能持续进行写入么?

为什么 AOF 是数据先落盘再写日志? 而数据库是先写日志再落盘?

哨兵的选主策略? 一个哨兵是怎么晓得其余哨兵的存在的?

HashMap 八股文

红黑树的特点?

三次握手和四次挥手的过程?

TIMEWAIT 为什么要期待 2MSL?

301 和 302 状态码的区别?

磁盘调度算法?

操作系统死锁?

过程和线程的区别?

哪一种 IPC 最快?

线程的几种状态?

过程调度策略?

三点十五分时针和分针的夹角?

3.07 业务中台三面 35min (过)

自我介绍

问我的项目, 问实习

你在我的项目当中负责的角色?

你感觉 TX 的气氛怎么样?

你个别几点走?

那边加班重大么?

RPC 调用过程中, 当初要在消费者这一端配置某种调用超时之后的服务, 怎么能力判断是否曾经超时呢?

对于超时工夫的设定, 怎么设置呢?

有几种超时的状况? 对应不同的状况你会怎么办?

301 和 302 状态码的区别?

HTTP 和 RPC 的关系?

哪里人? 平时怎么学习?

你对 B 端和 C 端业务的认识?

总结

最初决定走新批发场景金融的流程了,淘宝购物车最初还差一个大老板面,钉钉差口试和穿插,业务中台差口试和穿插,这些面试都必须进入流程之后能力持续,面不动了,所以前面约的面试都拒了。。心愿场景金融前面的面试不会出什么幺蛾子吧。。。。

面试的时候尽量谋求捕风捉影,千万不要想着打面试官的马虎眼,有些货色没做过就是没做过
这次面试面试官帮我回顾了一下我大一大二都在干些什么?
特地是面试官问我大学生存充不空虚哪里,真的是感叹特地深

最初

欢送关注公众号:前程有光,支付一线大厂 Java 面试题总结 + 各知识点学习思维导 + 一份 300 页 pdf 文档的 Java 外围知识点总结!这些材料的内容都是面试时面试官必问的知识点,篇章包含了很多知识点,其中包含了有基础知识、Java 汇合、JVM、多线程并发、spring 原理、微服务、Netty 与 RPC、Kafka、日记、设计模式、Java 算法、数据库、Zookeeper、分布式缓存、数据结构等等。

正文完
 0