字节 面经 基础架构

  • 一面 4.19 1h

  1. GMP(阐述、P和M代表啥、为什么引入P)
  2. 怎么限制goroutine的拉起数? goroutine之间是怎么实现同步的?
  3. 内存管理(阐述、为什么对象分三种、怎么避免内存资源浪费(比如16B的大小的对象,一个页中使用了10%有效,90%无效))
  4. 什么是RESTful ,增删改查对应的HTTP动词是什么?
  5. HTTP request的格式
  6. 如果没有ConTent-Length 怎么使用HTTP (Transfer-Encoding为chunked)
  7. HTTP 与 HTTPS的区别? 为什么要有两种加密?
  8. socket函数
  9. contect 和 accept对应 TCP 三次握手的什么阶段?
  10. TCP 三次握手交换了什么东西? 为什么有窗口大小?
  11. 进程通信方式
  12. 管道自己用过没?
  13. 父子进程用过没? 父子进程的内存是拷贝还是共享? 公共库之类的资源,操作系统是怎么实现父子进程共享的?
  14. 项目中,如果高并发请求怎么限制goroutine?
  15. 项目的模块划分?
  16. 心跳检测发送了啥?为什么用ES和Kafka?
  17. 数据存储是怎么实现的?

算法:判断树B是否是树A的子结构?

  • 二面 4.22 1h

  1. 自我介绍
  2. 对象存储架构
  3. 看过分布式论文没?为什么写这个项目
  4. 接口实现,研究过公有云其他的对象存储接口没
  5. 怎么存储数据的? RS纠删码怎么用的?
  6. 如果不用go,怎么应对高并发的http请求
  7. epoll 原理,自己用过没?自己写的,还是书上的?
  8. 看过什么专业的书? 有什么收获
  9. channel的底层实现?
  10. 看过什么源码?
  11. etcd的watch机制,用过没?
  12. 为什么基于k8S做
  13. kafka用来干什么了
  14. 二叉树和红黑树的区别
  15. 为什么用红黑树
  16. trie树,有什么问题
  17. 10w个URL黑名单,用什么数据结构实现?(trim树、布隆过滤器、hashmap)各种情况的时间复杂度
  18. 布隆过滤器为什么有差错
  19. 建立多大的hash表,时间复杂度

算法:        两个list求相同元素

                    用例需要考虑什么? 怎么优化? 时间复杂度? 如果是两个无限队列,怎么办?

  • 三面 4.26 50min

  1. 全程项目讨论,需求探讨之类的

无算法

  • HR面 4.28 15min

  1. 自我介绍

  2. 实习期待获得什么?

  3. 为什么转专业

  4. 两次考研都考了多少分?为什么会被刷?

  5. 自己比着同届的优势和劣势

  6. 手里还有什么offer,以及在走流程的

  7. 实习地方选择

  8. 实习时间,转正意愿

4.29 offer下来(完美的一天!上午保罗14-14拿下第一轮,下午收到offer,晚上放假了和py happy喝酒)

字节流程很快,不拖沓,舒服。
自己运气比较好吧,手撕没有碰见难题,基本都是在和面试官沟通交流问题。   
问题都是自己回想着写的,可能会有差错不合理的地方。
供交流分享
#面经#
全部评论
一个实习就问的这么广这么深了吗
1 回复 分享
发布于 2022-05-01 15:56
trie树吧??
点赞 回复 分享
发布于 2022-08-05 15:15
老哥base哪里
点赞 回复 分享
发布于 2022-05-14 15:06
我26三面,现在还没结果
点赞 回复 分享
发布于 2022-05-01 15:53

相关推荐

jubjub:昨天刚面完一场前端 主要拷打简历上技术的使用经历+手撕两题
发面经攒人品
点赞 评论 收藏
分享
2025-12-14 09:20
门头沟学院 Java
1.项目介绍2.说一下你在里面参与的业务流程吗,整个系统3. 为啥会选用netty做这个二进制流的解码跟这个传输的一个框架呢?之前有没有评估过别的网络框架4.你的上游是什么模块,上游是怎么给你推二进制流的5.你的行情模块接入层是单体的吗?6.你们的ConcurrentHashMap是怎么设计的?这个Map 存在一台机器上,其他机器要用怎么办?7.如果这个 Map 丢了,比如服务重启了,数据怎么恢复8.如果单纯是存历史数据风控要用,那你Map只存最新的?那风控历史数据从哪查9.你们是写入Map后异步写Redis,对吧?那中间宕机了,Redis还没写成功,这条数据不就丢了?你们怎么保证数据不丢?10.你觉得 Redis 是强可靠的吗?如果 Redis 挂了你们怎么办11.什么是长连接?NIO 和 BIO 的区别讲一下吧12.所有上游都能跟你建立长连接吗?有没有场景不能建立长连接?那你们怎么处理?13.前面你说到的短连接和长连接混用,那这种情况下顺序怎么保证?有没有旧数据覆盖新数据的问题14.那如果你这边有多台机器,同时处理请求,怎么保证同一条行情数据不会被覆盖?顺序怎么保证?15.RocketMQ 是在哪一段用的?是在接入层之后就直接发MQ了吗16. MQ是怎么做分区的,你提到要隔离,那你只是broker隔离,消费端没有做隔离的话有啥意义17.MQ发消息用线程池是吧?那线程池参数是怎么配置的18.业务里为啥要用一个Map缓存行情?不是直接往下推就好了吗,还有你这个Map有没有读的链路?如果没有get操作,这个Map的存在意义在哪19. 那你说你重启后需要恢复数据,如果我们不用ChronicleQueue、Disruptor这些WAL预写,只用 Redis + MySQL,你怎么设计才能保证数据可靠20. Redis双机房是怎么做容灾的?同步是强同步还是异步的?中间挂了数据丢不丢21.有没有幂等场景?比如别人调你下单接口,你怎么实现幂等?是怎么返回给上游的22. 重试的时候你幂等怎么保证?怎么区分要返回什么呢23.问个MySQL的问题,MySQL里面那个b➕树它是双向链表还是单向链表,为什么24.手撕:1.给你一个数组,比如 [5,7,1,2,10],表示二叉树中序遍历的结果是节点 1,2,3,4,5,它们对应的分数分别是 5,7,1,2,10。2.要在所有符合这个中序顺序的二叉树中,找到“加分”最高的那棵
查看24道真题和解析
点赞 评论 收藏
分享
评论
12
93
分享

创作者周榜

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