字节面经|后端开发|一二三面|已OC|新鲜面经

时间:2024-10-03 07:22:14

【个人情况】

双非大三 + 去年八月份开始准备 + 两个项目 + 开源仓库 + 几个国奖 + 知识库 + 专业绩点前1%

【面试情况】

笔试1h ak + 6场面试算法题都过 + 八股文应该没问题 + 中间件可能不熟悉 + 项目和场景设计题能勉勉强强满意

【一面】

字节面试是真的很看逻辑,讲到哪问到哪,合理提出关键字就会带动面试官去提问

总结评价:前期项目聊到哪问到哪,后期八股文是真太熟悉了,算法卡时间险过。

项目

1.讲讲项目里面对RabbitMQ的了解

的交换机和队列的联系

监听binlog,binlog是什么?

和binlog的区别。

是什么?怎么实现的?

6.讲了下如何设计,5个表,如何用json优化到三个表

7.如何配合业务层实现授权以及鉴权

怎么统计在线用户。讲了下暴力统计token,面试官不满意,就过了

9.开始问redis,开始八股文
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

八股文

的数据结构讲一讲 + 使用场景五种及使用场景 + bitmap

里面跳表是什么?

里面为什么用B+树?

+树和二叉树区别?那能不能用哈希呢?

5.讲讲数据库索引?八股ing

6什么是事务?

7.讲讲数据库的隔离级别,分别怎么解决可能出现的问题?

8.简单讲讲MVCC?

9.既然用了MVCC版本查看,为什么还会出现幻读? 

10.说说进程和线程的区别。老八股了

11.进程线程都怎么通信。八股拿下

12.线程的状态。老八股文

13.聊聊计算机网络输入URL到看到网页

14.四次握手。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27

算法

1.前序 + 中序 构建二叉树 并且前序 + 中序打印。

leetcode原题
  • 1
  • 2
  • 3

【二面】

项目

1.你是来实习是吧?课程怎么办?

2.讲讲你对spring和springboot的理解?

是怎么加载redis的

4.为什么比不用springboot更方便呢?

5.加载的redis或者bean是单例还是多例?默认单例

是怎么实现单例模式的呢?

7.单例模式线程安全吗?本身不具备安全特性

8.怎么保证多线程下面单例模式安全?

和hashmap有什么区别?

11.线程安全是什么概念?

为什么多线程不安全,能举出例子来吗?

13.怎么保证线程安全?(锁)

和synchronize有什么区别?

15.你能说说设计模式吗?

16.为什么设计模式更好,你能说说用和不用的区别吗?

17.讲讲几种常见的设计模式。

18.那讲讲微服务吧。

19.微服务两台机器怎么通信呢?

20.那两台机器如何用HTTP怎么找到对方?

21.那微服务都有什么部分呢 

22.注册中心是什么讲讲?

23.网关是什么呢?

24.你能说说分布式登录怎么保持状态吗?

25.假设用户登录了,我想封他id,怎么操作,在java程序哪操作?

26.讲讲如果让你项目去实现禁ID(T人),你怎么做?

27.如果不用redis呢?

28.那讲讲set集合?八股ing

29.怎么设计限制用户单位时间访问次数? 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55

算法

1. leetcode.1155. 掷骰子的N种方法
  • 1

反问

1.我回答情况怎样?

2.能不能给一点建议。 

3.部门是Java还是Go?·
  • 1
  • 2
  • 3
  • 4
  • 5

【三面】

项目

1.自我介绍吧。

2.项目的难点。

3.项目会有多线程安全问题吗?
  • 1
  • 2
  • 3
  • 4
  • 5

场景

1.那既然用了redis,讲讲缓存一致性问题。

2.那你觉得你说的能保证一致性吗?

3.不仅从redis角度,同时从数据库并发可能产生问题角度答答。

4.不是很满意,再想想?

5.好现在来点设计问题,日志系统了解吧?。

6.如果我要你设计一个日志系统,你能问三个问题你会问什么?

7.现在再来个问题,计算机内核态和用户态概念懂吧,给我讲讲,把我当做小白。

8.说了很多计算机用语,再给你一次机会,把我当成文科生

9.说说你目前是怎么学习的。

10.再给你一次机会,你能不能讲讲RabbitMQ回答下一面的问
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

反问

1.实习生干什么工作?

2.介绍下部门?

后端开发在里面负责的是什么工作?

4.有什么建议?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

作者:力扣-404name