这一次面经的分享来自很早和我一起打王者的兄弟,为啥印象这么粗浅呢,因为他鲁班贼 6,以至于我独自给他存了个备注。
这一次历时两个月,他拿到了一大堆的 Offer,祝贺他拿到了心仪的阿里 Offer。
依照常规,当然是邀请分享一波面经了。
不过这一次是我看见面经里整顿的最欠缺的了,简直不须要我做什么批改就能够收回来了,再次感激他的分享。
百世物流专场
一面
- 线上 SQL 调优教训。调优的习用思路。
- 索引为什么采纳 B + 树,而不必 B 树,红黑树。
- 我的项目中 MQ 利用场景,如何避免生产失落,反复生产如何解决?
- JVM 类加载机制(双亲委派)。CMS 垃圾回收过程。
- 我的项目中的设计模式的应用。
- 如何晋升接口的响应工夫?
- MyBatis 框架缓存说一下。
- 如何本人实现一个锁。(答复时候 基于 AQS)
- Redis 挂了怎么解决?(减少本地缓存)
-
网络的七层模型。每层的作用?(答复时候,我间接说了我是基于五层模型的。)
- 三次握手的过程,为什么三次?
- 为什么呈现 ip?
- HTTPS 发送申请的过程。
- Eureka 调优如何调的?自我保护模式。
- 分布式事务的流程?(LCN)
- 限流的应用,原理是什么?常见限流的算法有哪些?限流之后的回绝策略。
二面
- 手撕实现一个多叉树,遍历打印。
- 手撕单例。
- 死锁的产生。
- 如何预防死锁,OS 如何做的?MySQL 如何做的?
- 如何在代码编写时候防止死锁?
- hashmap。
- 什么是高内聚低耦合。
- 我的项目中的凋谢关闭准则如何实现的,如何自定义 Bean。
- bean 的循环依赖如何解决?
- MySQL 索引实现原理。为啥快?
三面
- 为什么到职?
- 当初薪资?冀望薪资?
- 介绍业务,你认为的外围是什么?
- 有什么想问我的。
光云科技
一面(30 分钟)
- 我的项目中解决过什么问题?
- 数据库事务 ACID 是如何实现的?
- mysql 如何解决死锁的?
-
分布式锁的应用
- 为什么应用 Redisson?
- Redisson 挂了一台怎么办?
- redis 为什么能够实现锁?
- 分布式锁还有其余的形式吗?
- redis 长久化
-
分库分表
- 为什么分库分表?
- 遇到过什么问题吗?
-
讲一下你了解的 CAP
- 让你设计一个零碎,依照 CAP 实践你会怎么设计?
-
MQ 用过吗?
- 技术选型,为什么抉择 RocketMQ?
- 线上有没有遇到过 向 MQ 写入音讯失败的状况?
- RocketMQ 消费者 发送音讯失败怎么办?(放 redis,如果 redis 挂了怎么办?)
- RocketMQ 音讯沉积怎么办?
-
dubbo + zk
- dubbo 为什么用 zk 不必 nameservice?
- zk 挂了 dubbo 还能调用吗?重启之后还能调用吗?
- 有什么要问我的?
二面(40 分钟)
两个面试官
-
说一下我的项目中秒单模块的优化。
- 带宽大是什么概念?
- 思考应用同一机房的机器局域网吗?如果走局域网的话,网络如何走的?
-
聊一下 MQ
- MQ 写入音讯失败的状况如何解决?(和一面的问题一样,我间接说出了解决方案,redis,本地内存)
- 生产者发送音讯的几种形式,还有其中的差异。
-
Nginx 聊一下
- Nginx 为什么那么快?(没看过,然而我猜想用的 epoll)
- 说一下 linux 常见的 IO 模型。(5 种)
- epoll 的边缘触发 和 程度触发理解吗?
- epoll 的毛病说一下。
-
MySQL
- 画一下 MySQL 的架构图。
- 线上 MySQL CPU 报警了,如何疾速锁定问题并且解决?
- 同样一条查问语句,有时候快有时候慢,什么起因导致的?(刷脏页)还有什么?(不会了)
- 设计一个商品类目标数据库存储,查问的工夫简单读说一下。如何做优化?(这里说到本人能想到的最优解决方案)
- 线上 SQL 调优个别怎么调优?
- 说一下 File Sort。
- 讲一下 MySQL 如何排序的?
- 磁盘 + 内存排序
- 什么状况会触发这个?
- 如果采纳磁盘 + buffer 的排序形式 最基本用的什么排序算法?(归并排序)
- DDD 理解吗?
- 有什么想问我的?
三面(30 分钟)
- 介绍事业部的业务和产品线。
- 问我退出的起因(并发量高,可能锤炼我本人)
- 当你遇到工期不够的时候,你本人认为的优化还没有做完怎么办?
- 咱们部门的并发量很大,然而你刚来还是 CRUD,你心里怎么想的?
- 你来了之后你本人想着如何疾速的应用新的公司?
- 拿了几个 offer 了?
- 有什么问我的?
四面(10 分钟)
HRBP
- 介绍一下集体状况。
- 你本人平时本人生存状态是什么?
- 你做过的我的项目中你最有成就感的一个是哪个?为什么?
- 介绍了团队的状况。
五面(10 分钟)
招聘的 HR。
- 冀望薪资。
- 为什么退出咱们。
- 到职起因
- 入职工夫。
来将来科技
一面 (40 分钟)
-
介绍我的项目,我的项目中遇到的问题。
- 秒单的优化。Redis 挂了怎么办?
- MQ 如何避免失落的?
- 为什么 RocketMQ 采纳 NameServer
- 线上 OOM 如何触发的?如何疾速找到问题的?
-
线上遇到的 SQL 慢查问问题?
- 如何疾速锁定问题的?
- 如何做的优化?
- 如果让你设计一个相似于 Dubbo 这种 RPC 近程调用框架你如何设计?
-
说一下你了解的线程平安~
- 线程平安的形式?
- 除了加锁还有什么形式?(单线程的线程平安,我答复的 redis,这里应该答复到 ThreadLocal)
- ThreadLocal 用过吗?用来做什么?他的实质思维?有什么注意事项?他保障线程平安的形式是什么起因?
-
我的项目中设计模式的应用
- 策略模式
- 模版办法模式
-
Redis 为什么那么快?
- 讲一下常见的 IO 模型。
- 用主从 redis 做锁能够吗?有什么问题?
- 都学习过什么常识,浏览哪些源码?你方才说的你源码读了就忘 你是怎么解决的?(画流程图,多读几遍)
- 有什么想问我的?
二面(30 分钟)
- 画一下我的项目的业务架构图。
- 在我的项目中遇到过什么问题?
- 你在我的项目中解决过什么问题?
- 平时如何学习的?
大搜车
一面(60min)
- 你认为的技术成长是什么样子的?
-
介绍最拿手的我的项目
- 介绍我的项目的架构。
- 你感觉你我的项目中比拟优良的点在哪里?
- 你们我的项目的架构是什么?
- 多少个节点?
- 讲一下你们数据流的流向。
-
讲一下你 Eureka 线上如何做的优化?
- 注册核心还理解其余的吗?
- 讲一下 Eureka 和 ZK 的区别是什么?
- Nacos 的原理说一下
-
MySQL
- 线上语句的优化?
- 讲一下优化的流程。
- 索引为什么快?
- 讲一下 B + 树。
- 红黑树为什么不能用?
- 红黑树和 AVL 树的区别?
- 红黑树最多通过多少次旋转?(遗记了)
-
自定义 Bean 容器 如何做的设计?
- 如果让你优化这种设计 你如何优化?
- 自定义注解能够实现吗?(这里不会,不晓得咋实现)
-
JVM
- 线上的 OOM 如何排查的?
- 如果线上没有 OOM,然而我的利用吞吐量忽然降落,这个时候你猜想一下什么起因?(Full GC)
- 讲一下 CMS 和 G1
- G1 的最大长处是什么?
-
Redis
- 介绍一下线上 redis 的应用。
- redis 挂了怎么办?
- 如何保障 本地缓存 和 redis 还有 mysql 的数据一致性
- 提早双删的策略。
- redis 的缓存穿透如何解决?
- 布隆过滤器 如何实现的?
- 10W 数据 和 1W 数据 布隆过滤器的长度是否是变动的?不变的话是多大?(这个要联合误差率来答复)
-
ConcurrentHashMap 如何能保障线程平安的?
- 什么是线程平安?
- HashMap 线程不平安体现在哪里?(扩容时候,多线程是不平安的)
- HashMap 数组的长度为什么是 2 的次方?
- 说一下扩容的操作。
- 计算数据落在 hash 槽的时候不必取模用的位运算是如何计算的?(遗记了,这里是(数组长度 – 1 & 哈希值)))
- 有什么要问我的?
婚礼纪
一面(60 分钟)
-
介绍一下你我的项目中遇到的问题,你是如何解决的?
- 线上 SQL 调优,问题的解决。
- 常见的 SQL 优化计划
- Eureka 的参数调优怎么调的?
- Ribbon 近程调用的时候 用的缓存 是和 Eureka Client 是同一份吗?
- 如果保障上线新的服务时,老得服务被及时的下线?(手动下线)
- 熔断如何做的?
- 讲一下他熔断的原理
- callback 同步还是异步?
-
SpringBoot
- 说一下主动拆卸的机制
- 多个 Bean 例如配置多个 DataSource Springboot 会优先装载那个?
-
一个余额的模块,更新余额和插入流水的程序如何做?(都能够啊,只有在一个事务就行)
- 如何保障余额模块,查问进去去做批改这个操作的数据安全。(代码中加锁,数据库 for update 或者一个 update 语句或者应用乐观锁机制在数据库中减少版本号)
- 如何进步接口的响应速度?
-
MQ
- RocketMQ 为什么那么快?(零拷贝是要害)
- MQ 长久化机制说一下。
-
MySQL
- 一条 SQL between and,和 in 的区别。
- 惟一索引和一般索引如何抉择?
- 讲一下索引下推的过程。
银泰
一面(60 分钟)
-
介绍一下你做过最简单的我的项目和线上解决过的问题。
- SQL 调优,OOM,秒单优化。
- 你对这个我的项目做过的最大奉献是什么?
- 这个我的项目带给你哪些挑战和成长了?
-
如何保证系统的稳定性?
- 限流,降级熔断,多节点,报警信息。
- 限流算法有那些?
- 令牌桶设置为 10 代表 QPS 最大是 10 吗?
- 如何抉择集群限流和单体限流?(都用上)
- 熔断降级区别是什么?
- 除了这些你还有什么想要补充的吗?
-
分布式事务
- 你们我的项目中的解决方案
- 说一种你认为 QPS 最高的分布式事务的解决方案。
-
redis
- 我的项目中 redis 用来做什么了?
- redis 还能干嘛。(说了一下五种数据结构的用处,还有分布式锁。)
- redis 单线程为啥快?多线程会有哪些问题?
- 分布式锁聊一下。
- redis 如何实现 可重入锁?
-
MQ
- MQ 在我的项目中的用处。
- 音讯写不进去怎么办?
- 音讯生产不了怎么办?
- 音讯什么状况下音讯会呈现失落的状况?
- 什么时候音讯会呈现从新投递的状况。
- 程序音讯如何保障?如果不写入同一个 queue 如何保障音讯程序生产?
- RocketMQ 为什么快?(mmap 和 sendfile 区别,DMA getter 机制的引入)
- 分库分表理解过吗?如何分库分表?
- DDD 理解过吗?
- 有什么想问我的?
有赞
一面(80 分钟)
这次面试次要分为 3 局部,工夫约 1 个小时。
-
HashMap
- 讲一下你了解的 HashMap。
- HashMap 查问的复杂度为 O(1) 是如何实现的。(因为数组在内存中存储是间断的内存空间)
- 线程平安吗?线程不平安体现在那里?
-
线程平安的的 map
- 说一下 JDK 的线程平安的 Map?
- 别离如何实现的线程平安的?
- 你了解的线程平安是什么样子的?如何实现线程平安?(锁,变量线程私有化)
-
线程池
- 讲一下线程池的原理。
- 你们线上线程池的配置,为什么这么配置?
- 计算密集型如何配置线程池的参数,为什么这么配置?
- 如何实现动静配置线程池?
-
MySQL
- 讲一下 MySQl 的架构
- 事务的 ACID 别离是如何实现的?
- 讲一下你了解的 MVCC(高下水位和以后读的了解)
-
SQL 调优
- 咱们个别 SQL 调优在调什么?让优化器抉择正确的索引。
- 你简历我的项目中线上调优的经验 分享一下。什么起因导致的线上事变,如何疾速发现和解决的?
- 从这次线上事变,你失去了什么教训了嘛?(须要提前储备咱们的常识,当产生了问题的时候,咱们才能够疾速的锁定和解决问题)
-
redis
- 缓存异常情况如何解决?
- 热 key 的问题解决。
- 你在线上会做兜底计划吗?
- 开发周期不够怎么办?(周末加班也要实现该问题)
-
分布式事务
- 你们线上分布式事务的解决方案是什么?
- 你有没有思考过你们的 解决方案存在肯定的问题?如何优化?
- 线上的弥补机制如何做的?
-
RocketMQ
- 说一下 RocketMQ 的事务音讯。
- RocketMQ 你们线上如何保障音讯不失落的。
-
分库分表。
- 你们业务分库分表了吗?(没有,然而我晓得解决方案)
-
DDD
- 讲一下你了解的 DDD。(刚开始学,说了一些大略的概念和一些名词)
- 介绍一下你的我的项目(说了一堆之后,面试官不问了)
- 如何学习的?
- 有什么想问我的?
二面(60 分钟)
现场面,面试官很激情。这一面完完全全是业务。我的项目的细节扣的很细。
-
画一下你们我的项目的架构图。
- NGINX 负载平衡策略有哪些?
- 说一下你我的项目中如何优化 Eureka 的参数的?各个注册核心的比拟?
- 你如何了解 CAP 的?
-
MQ
- Kafka 和 RocketMQ 的比拟?
- RocketMQ 的事务音讯。
- RocketMQ 如何实现程序生产?你们我的项目有这种需要吗?
- 画一下你负责模块次要的时序调用图。
- 我的项目中数据库表的设计。
- 你们我的项目线上遇到过什么问题?
- 你在我的项目中解决过什么问题?
- 你我的项目中遇到过最大的挑战是什么?
- ES 有没有应用过?(没有)
- 画出你认为的电商交易链路。
- 讲一下你认为的 DDD。
- 你有什么想问我的?
三面(30 分钟)
- 你我的项目中解决过什么问题?给你带来了哪些思考?
- 除了被动的解决一些问题,你被动解决过什么问题?
- 平时如何学习的?
- 为什么抉择有赞?
HR(20 分钟)
- 为什么会抉择内推有赞?
- 是什么让你在上家公司呆了三年的?
- 你工作之后最大的挑战是什么?
- 你如何了解你面试的部门做的业务的?
- 平时有在学习吗?如何学习的?
- 拿了哪些 offer 了?
菜鸟
一面(40 分钟)
先开始聊我的项目,我的项目中每个点都扣的特地特地细。
-
介绍我的项目。
第一个我的项目
- 讲一下你我的项目中架构。(单体)
- 我的项目的 QPS 和数据量。
- 你我的项目中做了什么?拿到了什么后果?
- 解决我的项目中的问题带给你的思考。
- 如果流量扩充 100 倍如何解决?
- 有了解决方案了为什么不去做?
- 你们如何保障你我的项目的稳定性的?
第二个我的项目
- 说一下你们我的项目的业务架构和利用架构。
- 过后架构为什么做?
- 我的项目的 QPS 和数据量。
- 还是那个问题流量激增 100 倍,你认为你们这个零碎哪里最先呈现瓶颈?如何解决?
- 你们这个业务是行业 Top3,倒退的很好,为什么不依照你的优化思路去优化来晋升他的稳定性?
- 说一下你们我的项目中分布式事务和分布式锁的解决方案。
-
线程平安
- syn 的锁降级。
- 罕用的线程平安的容器有哪些?
- Spring IOC 和 AOP
-
RocketMQ
- 架构。
- 音讯避免失落如何做的?
- 事务音讯说一下。
- 让你设计一个 MQ 你如何设计?
- 有什么想问我的吗?
- 拿了哪些 offer 了?有赞和咱们这边你如何抉择?
二面(口试)
阿里的伯乐平台(相当于白板),面试官出题,须要和面试官通话的状态下写代码,你写的面试官能够实时看到。语法不必正确,只有逻辑没有太大的问题就行。
-
实现一个双向链表的 insert,find,delete 的办法。
- 别离的复杂度是多少?(这里留神,插入头尾和依照 index 插入的工夫复杂度不一样)
- 优化一下 find 办法的查问工夫复杂度。跳表 O(logN),哈希表 O(1)。
三面(30 分钟)
-
我的项目相干
- 解决过什么问题?
- 如何做到疾速锁定问题的?
- 如何保障我的项目的稳定性?
- 说一下我的项目的利用架构?
-
Spring ICO 和 AOP
- 注解式事务和编程式事务有什么差异?
- 工作上遇到过的最大挑战是什么?
- 到当初为止你生存中遇到过的最大的挑战是什么?
- 一面面试官说你拿了有赞的 offer 了?咱们和有赞你会抉择哪一个?
- 有什么想问我的?
四面(20 分钟)
大老板面试,早晨十点多。
- 你在我的项目中的角色是什么样子的?
- 你认为计算机相关的 根底课程重要吗?你除了通过 B 站看视频还有哪些学习门路?
- 你想来阿里想从这里取得什么?
- 后面面试官说你拿了有赞的 offer 了,咱们和有赞你会如何抉择?
-
你认为哪些问题我没有问到?
- 没有问技术。(因为我能看到后面的面试记录,所以都晓得他们问了哪些了)
-
有什么想问我的?
- 对我的倡议?
五面
- 为什么退出菜鸟?
- 你平时除了工作会做一些什么事件?
好了,看完了你晓得了吧,那些光荣王者的我邀请你的时候不要爱答不理的了啊。