写点什么

字节后端开发 3+4 面,终于拿到秋招第一个 offer(1)

  • 2021 年 11 月 11 日
  • 本文字数:1748 字

    阅读完需:约 6 分钟

  • 分布式锁的实现方式,zookeeper 和 redis 怎么实现分布式锁

  • 这两种实现的区别有哪些,redis 实现有哪些缺点

  • redis 部署的结构有了解吗

  • redis 主从一致性的算法

  • 主机同步到备机的话有几种策略

  • zookeeper 的主从同步策略

  • zk 通常部署是一主几备,假设有三台呢,假设我要写一个数据进去,整个流程可以大概介绍一下吗

  • zab 是主从同步策略,那么同步数据要怎么做呢

  • 对主机进行一次存储,它会有几次响应,主机的一次存储请求,到底经历了什么

  • zookeeper 做注册中心,跟其它可以做注册中心的中间件相比的优缺点

  • 分布式事务的 CAP 理论了解吗

  • 看过分布式的基础知识吗


算法题:


最长公共子串


给定两个字符串 str1 和 str2,输出两个字符串的最长公共子串,如果最长公共子串为空,输出-1。


输出最长的子串长度就可以


字节三面 时间:50 分钟




  • 项目相关问题

  • 多台机器 session 问题怎么解决

  • 线程之间,进程之间怎么通信

  • 进程的资源分配是怎样的,java 中的内存怎么划分的

  • mysql 事务默认是哪种隔离级别

  • undo log,redo log,binlog 分别有什么用,这些日志在所有 mysql 引擎中都有吗

  • redis 用的多吗,如果存入比较长的 key 会发生什么

  • 在浏览器输入 toutiao.com,显示无服务,连 404 这样的报错都没有,会是什么


【一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义】
浏览器打开:qq.cn.hn/FTf 免费领取
复制代码


问题,怎么排查


  • 当在微信上向一个人发送图片,接收方如何显示接收的进度,传输使用什么协议,也就是 IM 中可以使用的协议

  • 有什么你比较了解,我没问到的吗


算法题:


根据前序和中序遍历结果复原二叉树


二面和三面表现不太好,最后 hr 说不能接受实习的话可以等正式批再试试,后来被另一个部门约谈,3 面+交叉面


字节教育部门一面 时间:1 小时




  • Spring 的 IOC,DI 和 AOP 简单介绍

  • IOC 的好处,DI 的实现方式(反射),AOP 的好处

  • MySQL 存储引擎,InnoDB 和 MyISAM 的区别

  • 聚簇索引和非聚簇索引区别

  • MyISAM 和 Innodb 的应用场景

  • MyISAM 支持什么锁

  • 介绍一下间隙锁

  • 了解的排序算法


算法:


1. 三个有序数组的归并排序


2. 求一个字符串最长不重复子串的长度?


abccdef 的最长不重复子串为 cdef


字节教育部门二面 时间:50 分钟




  • 实习项目技术架构,服务,存储

  • 微服务接口,存储,有无其他类型存储(缓存)

  • 有意思,有难度的点

  • 解决日常问题,线上问题的排查方法

  • 使用的是 http 协议,会不会有安全的问题

  • https 通过什么保证安全

  • CA 证书如何保证不被伪造

  • https 的两套加密算法分别是什么算法

  • 在浏览器输入一个网址,无法打开网页,如何排查

  • 谷歌访问不了,你觉得是什么问题,了解墙的原理吗

  • MySQL 的索引实现

  • 用 B 树做索引的 DB,B+树和 B 树做索引的区别

  • 有没有适合用 B 树的场景

  • redis 的数据结构

  • 底层实现有了解吗,zset 底层通过什么实现

  • 对 NoSQL 的了解

  • Java GC 的机制,原理

  • 算法:n*n 数组顺时针旋转 90 度,写测试用例

  • 自己的优缺点


字节教育部门三面 时间:50 分钟




  • 实习相关问题

  • 有学过计算机专业的相关专业课吗

  • 算法:队列,有队列基本功能,又可以以 O(1)复杂度返回当前队列元素中的最大值 (双端队列存储最大值)

  • redis 使用场景

  • 为什么用它做缓存

  • redis 支持哪些数据结构

  • redis 数据持久化方式

  • redis 是并发安全的吗

  • redis 单线程的好处

  • redis 会被单机内存限制容量吗

  • linux 查看操作系统上的进程的命令

  • top 看进程还是线程

  • 概率问题:轮流掷硬币,先掷出正面的人赢,先掷的人赢的概率

  • 对自己目前技术能力的评价


字节教育部门四面 时间:60 分钟




  • 跟计算机相关的知识的学习途径

  • 为啥想转计算机

  • 为啥研究生没读计算机

  • 如何学习的计算机相关内容

  • ArrayList 的实现原理

  • 操作的时间复杂度

  • 在最后插入元素,时间复杂度是多少,如果遇到扩容呢,综合时间复杂度

  • HashMap 的实现原理,解决 hash 冲突还有啥方法

  • 拉链法和开放地址法的优劣

  • 怎么解决 hash 冲突多时的性能下降问题

  • 拉链法和开放地址法扩容上的区别

  • HashMap 扩容时的数据操作会有较长的停顿,有什么方法使它对性能的影响平均一些

  • 渐进 hash 迁移,怎么应对数据查询,插入

  • redis 的作用

  • redis 为啥快

  • redis 除了做缓存还有其他应用吗

  • redis 为什么不能替代 MySQL

  • redis 内存大小有限怎么办

  • 有较大缓存需求,远大于内存容量怎么办

  • MySQL 提供哪些满足数据库需求的功能

  • 事务干嘛的

  • ACID 是啥,隔离性怎么理解

  • 怎么做到事务功能

  • 隔离性怎么实现

  • MVCC 怎么实现

  • 算法:从整数数组中找到互为相反数的整数对 [1, -1, 2, 3, 0 , -3, -1, 1] 返回[1, -1] [3, -3] 编写测试用例

  • 毕业前有时间实习吗

  • 金九银十面试复习历程

评论

发布
暂无评论
字节后端开发3+4面,终于拿到秋招第一个offer(1)