字节三面过了!

简介: 字节的三面

大家好,我是小林。

昨晚收到个读者的喜事,在秋招中,过了字节的三面,已经稳的了。

20.jpg

我简单跟他聊了下,他说他在备战的时候,他对于操作系统和计算机网络的学习,都深入的非常底层,不至于表面的理论知识,所以他在面试的时候,就会让面试官有很深刻的影响,屡试不爽。三面字节的面经也整理好了,这次就先分享下面经,等过几天再分享学习路线和心得,大家期待下就好啦。


一面 1h5min


  1. 项目?缓存一致?为什么更新?本地是广播消费?消费失败怎么办(重试,还不行就数据库兜底重发,然后人工干预)?缓存预热?缓存数据有多少?能存多少?
  • 优化:拆分服务后本地缓存分批存?不同服务对应存不同本地缓存?消费失败可以不用兜底?
  1. mq的作用?幂等和防止重复?消息丢失怎么解决?
  2. get、put、post区别?哪个是幂等的?幂等详解?
  3. http不同版本区别?要说到QUIC的握手时机不同
  4. QUCI发送过程?(很底层,包括重复发送那一块)
  5. 内存淘汰策略?缓存数据过热?数据结构?
  6. 隔离级别怎么保证可重复读?mvcc和间隙锁
  7. 索引区别?innodb解决幻读?
  8. hashmap线程不安全在哪里?1.8hash为什么高效?
  9. 锁升级?很细?可重入锁源码(status?)?公平锁非公平锁源码区别?对象头结构详细?.
  10. synchronized 和lock区别?synchronized 怎么加锁的底层?monitor对象?两个队列?非公平竞争?
  11. volatile?MESI?为什么MESI还要volatile?(语言层面volatile,lock前缀?系统层面MESI,JMM模型映射,内存屏障,总线风暴?提一下MESI优化的那两个队列所有要用内存屏障进一步保证)
  12. 算法说思路:整数数据取中位数(我说数据量不大就排序根据奇偶取中间?优化可以排序到中间就判断,不用全排序?骚操作可以放redis里?)没有刁难我


二面 1h


  1. 项目陈述?
  2. 为什么canal?canal解耦,懒加载,自带的顺序发送?为什么保证更新顺序这里不可以用mq消息版本?
  3. canal是单独节点部署的么?
  4. 可不可以不用mq?各个本地节点都载入canal?k8s sidecar挂载?
  5. mq可靠性?从发送到持久化到广播消费(定时任务(第三方控制速率) + 查库 ,优化 延迟消息 这里可以argue)
  6. 本地缓存优化?缓存预热?为什么更新?最终一致?
  7. 重复消费那里?顺便说一嘴弱校验
  8. 算法:一个数组和一个K,数组A{1,1,1,0,0,1,1,0},K=2,能让最多K个0变为1,问连续1最大是多少?滑动窗口
  9. 多嘴说了OS伪共享,秀了一下os,说Java的并发框架有用字节填充来实现Cacheline填充
    总结,项目这里漏说了分布式锁,但是这些已经说了四十分钟了,最后就做题了


三面1h15min


  1. 有没有别的offer?
  2. 成绩怎么样?为什么不考研?
  3. 说下项目?
  • 工作流怎么设计?原来是怎么样的?提供外部系统是怎样的?优化业务嵌入数据是咋样的?
  • 缓存存什么?数据结构是怎么样的?缓存大小,大小优化?怎么高可用?
  • 缓存预热是咋样的?spring启动怎么保证的?数据启动前不会被写入?
  • 分布式锁?原子性,过期时间,单点,红锁,npc
  1. 进程间通信?源码分析?管道实现?
  2. mysql怎么回滚的?
  3. redo,undo,bufferpool,宕机时候的两阶段判断
  4. 数据包发送,mac,arp,子网,路由转发,ringbuffer,数据拷贝
  5. 线程交替输出
  6. 多线程每秒1000次访问,超过则false,没超过返回true
  7. 反问:
  • canal k8s部署sidecar的看法 说综合考虑人力和业务,没有最好的方案
相关实践学习
快速体验阿里云云消息队列RocketMQ版
本实验将带您快速体验使用云消息队列RocketMQ版Serverless系列实例进行获取接入点、创建Topic、创建订阅组、收发消息、查看消息轨迹和仪表盘。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
消息中间件 分布式计算 大数据
大数据面经 字节跳动 (整理)
大数据面经 字节跳动 (整理)
514 0
|
机器学习/深度学习 JavaScript 数据挖掘
DL框架之MXNet :深度学习框架之MXNet 的简介、安装、使用方法、应用案例之详细攻略
MXNet 是亚马逊(Amazon)选择的深度学习库,并且也许是最优秀的库之一。它拥有类似于 Theano 和 TensorFlow 的数据流图,为多 GPU 配置提供了良好的配置,有着类似于 Lasagne 和 Blocks 更高级别的模型构建块,并且可以在你可以想象的任何硬件上运行(包括手机)。对 Python 的支持只是其冰山一角—MXNet 同样提供了对 R、Julia、C++、Scala、Matlab,和 Javascript 的接口。
DL框架之MXNet :深度学习框架之MXNet 的简介、安装、使用方法、应用案例之详细攻略
|
8月前
|
SQL 运维 安全
办公与生产一体化:基于阿里内部实践的办公数据安全解决方案
本文介绍了阿里云办公与生产一体化的办公数据安全解决方案,涵盖内部实践思考、真实案例及在阿里云上的落地情况。通过终端、应用和身份三个核心方面,确保数据安全,并结合实际案例展示如何应对非办公渠道和拍照截图等数据泄露风险。最后介绍了产品化后的半官权平台SASI及其三大核心能力,包括快速打击、分类分级引擎和云浏览器,保障企业办公环境的安全性和高效性。
269 7
|
10月前
|
存储 运维 安全
Snowflake 与传统数据仓库相比有哪些优势?
Snowflake 与传统数据仓库相比有哪些优势?
547 52
|
消息中间件 NoSQL 算法
第一次凡尔赛,字节跳动3面+腾讯6面一次过,谈谈我的大厂面经
简单来说,就如标题一样,我今天也想要凡尔赛一次,原来大厂的面试也没有想象中的那么难,字节跳动3面+腾讯6面,就这么一次性过了,下面就细细聊聊我的大厂面经吧,希望能够给金三银四要面试的朋友提供一些经验。
|
10月前
|
前端开发 关系型数据库 API
深入浅出后端开发——从零到一构建RESTful API
本文旨在为初学者提供一个关于后端开发的全面指南,特别是如何从零开始构建一个RESTful API。我们将探讨后端开发的基本概念、所需技术栈、以及通过实际案例展示如何设计和实现一个简单的RESTful API。无论你是完全的新手还是有一定编程基础的开发者,这篇文章都将为你提供实用的知识和技巧,帮助你在后端开发的道路上迈出坚实的一步。
|
Rust 编译器 开发者
Rust中的进阶宏:派生宏与属性宏
本文将深入探讨Rust编程语言中的派生宏(Derive Macros)和属性宏(Attribute Macros)这两种进阶宏的用法。派生宏用于自动生成实现特定trait的代码,而属性宏则允许我们为模块、函数、结构体等添加自定义属性。我们将通过实例展示如何在Rust项目中使用这些高级宏来增强代码的可读性和可维护性。
|
测试技术
测试点和测试用例一样吗?
测试点和测试用例一样吗?
1003 0
|
消息中间件 存储 算法
字节跳动这份面试题,你能打几分
字节跳动这份面试题,你能打几分
746 0
字节跳动这份面试题,你能打几分
|
Prometheus 监控 Cloud Native
Grafana下拉框选择不同环境
Grafana下拉框选择不同环境
373 0
Grafana下拉框选择不同环境