四面字节跳动(高级开发岗):并发+Spring+分布式+Hash+网络+JVM

字节跳动的面试官都挺好,面试的内容是我面试那么多家以来最全面的,问题也没有特别刁钻,都比较符合工作场景。

项目很重要,项目是敲门砖也是面试的大头,如果我没有简历上的两个项目的话,估计简历都很难被捞起来,而且进入到3面。很多面试题都是从项目角度去提问的,而且回答的时候也可以结合项目回答,这个很加分。

除了项目所用技术之外,也要关注项目的业务以及架构,最好是能融合在一起讲清楚。

只有多面试,你才能将原有的「我以为」思维变成「原来是这样」

一面:

  1. TCP三次握手和四次握手?为什么三次握手,TCP 的ack seq是ack次数还是ack字节数?RST报文指的是什么报文?
  2. http2的原理,https的原理,描述一下TSL的握手过程。
  3. JVM线上参数设置,为什么这么设置?能讲讲jdk的分代搜集器原理吗?
  4. volatile 关键字是如何防止指令重排的,synchronized能防止指令重排吗?
  5. 那进一步说说synchronized的锁消除与锁优化,自旋锁轻量级锁与重量级锁分别都是什么?
  6. Innodb引擎一个数据页的大小为什么是16KB?20个mysql字段,都是varchar(10),1000w数据情况下b+树高度是多少?
  7. 结合WAL机制和回滚段说一说innodb 事务引擎的MVCC原理?
  8. Select/Poll/Epoll 三种系统IO的区别?
  9. Zookeeper做服务的注册中心,如果服务规模大于1000,会发生羊群效应网络风暴,怎么优化?
  10. 说一说你理解的countdownlatch?countdownlatch的底层原理?AQS又是什么?
  11. 线程池的各个参数,ThreadLocal?怎么优化?知道FastThreadLocal吗?
  12. 装饰者模式和代理模式挺像的,他们有什么区别?
  13. 你们用了SpringCloud,能从源码角度讲一讲Eureka的底层架构与设计原理吗?
  14. 13亿用户量的微博plus,如何设计点赞系统才能保证高性能?
  15. 用户画像系统,用户标签一直在增加,怎么设计表结构?
  16. 手写一下线段树代码。

二面:

  1. Hashmap底层原理
  2. 讲讲Netty的内存池算法和对象池算法,什么情况下会内存泄漏?
  3. 你刚才说Netty使用PooledUnsafeDirectByteBuf。Unsafe是什么,java里能直接new吗?
  4. 分布式事务两阶段提交如果第二阶段超时了怎么办?
  5. 嗯,那tcc的原理能讲一下吗?新出来的Seata 有调研过吗?
  6. 分别从NIO层面和netty层面讲解一下零拷贝。
  7. 给你一个oom.hprof,让分析内存泄漏可能的原因。
  8. 微服务,怎么拆的,为什么要那么拆,
  9. 老生常谈题目,mysql和redis的数据如何保证一致性,就是 cache asigned pattern.
  10. 老生常谈题目:如果保证redis的内存里全都是最热的数据,考察的是redis的内存淘汰策略。LRU。
  11. redis说到了LRU,让手写一个lru算法。(用LinkedHashMap实现)
  12. mysql为什么用b+树,和b树区别?
  13. mysql 从二叉查找树说到红黑树说到多叉树再到b到b+,最后让手写了一个二叉查找树的中序遍历。

三面:

  1. 你们用了rocketmq,说一说rocketmq是如何保证消息写入的高性能,如何保证消息不丢失的?
  2. spring的设计思想。
  3. cpa定理,redis是cp的还是ap的?为什么?zookeeper是cp的还是ap的,为什么?
  4. 说一说你理解的面向过程,面向对象和函数式编程
  5. 你的技术职业规划。

HR:

  1. 你的优点。
  2. 多久能入职。
  3. 薪资问题。25k给不了,问20k行不行,平时多申请点补助。

读者福利

以上就是字节四面题目,以下是总结出来的大厂经典面试题目及答案。有需要获取的小伙伴:一键三连(点赞+收藏+关注) 后,添加微信:mxm9843 即可免费获取到

 

全部评论

相关推荐

xdm 早上喝奶茶差点喷出来。事情是这样的,我们班有个哥们儿,简称 L,去年秋招拿了字节sp,专业方向是后端。我们当时都震惊:这哥们儿平时课上从来不发言,期末小组作业基本是划水的那种,刷题平台 commit记录我点进去看过,绿格子稀稀拉拉。但他面试一路绿灯。一面二面三面 hr 面,全过,给的还是sp。当时班级群里恭喜他的、问他经验的、约饭的,热闹了一周。他说自己"运气好,准备充分"。我们都信了,直到三月初他入职。入职第二周开始,班里另一个进字节的同学W(在隔壁组的)开始跟我他的不对劲。一开始是写代码慢,后来写不出来,再后来是组里 mentor 让他fix 一个简单 bug 都搞了一下午没动静。最离谱的是上周。W 说他们大部门搞了个新人分享会,让新人讲一下自己负责模块的设计思路。L 上去讲了 20分钟,全程念稿子,问答环节别人随便问一个"那你这里为什么用 Redis 不用 Memcached",他直接卡 30秒说"这个我回去再确认一下"。会后他 mentor 直接找 leader 谈,leader 找 hr 谈,hr调出了他面试录像,全程对比口型和回答节奏,发现他二三面有大量时长在偷偷看屏幕外(推测开了双机位 AI 答题)。(这段是 W后来转述给我的,他自己也是听他组里同事八卦来的)昨天下班前,W 告诉我L 被辞退了,让他自己走,不走就走仲裁但会发函到学校。L 现在已经回学校了,朋友圈仅三天可见。我说真的,我不是个心眼小的人,但是我看到这个消息的时候真的有种"嗯,挺好"的感觉。去年秋招我投字节后端,简历挂。我准备了八个月,背 八股 + 刷 500 题 +项目改了三版,连面试机会都没拿到。班里这哥们儿凭着一个外挂上岸,最后还是被甩出来了。不是说作弊就一定会被发现,但是当面试拿到的 offer远远超出真实能力的时候,迟早会有这一天。试用期三个月不是给你过家家的,是真的要写代码、要在会议上回答问题、要扛需求的。我现在反而有点同情他。同情他相信"上岸就是终点"。发出来不是为了嘲笑谁,就是想说给那些正在被身边作弊上岸的同学搞得很 emo 的 uu 们听——别急,回旋镖很长,但它一定会回来。你继续刷你的题,写你的项目,背你的八股。该是你的迟早是你的,不是你的早晚还得还回去。xdm 共勉。
牛客12588360...:我不想评论面试方式,作弊是绝对不对的,但是你八股加刷题也不过是个做题小子,他穿帮纯粹是他菜,你也没有高明到哪里去
点赞 评论 收藏
分享
苏九222:给龙虾一个固定任务,每天出去逛一圈收集消息,token就上来了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务