字节抖音电商 一、二、三面 还是寄了
0912约面
0920 一面 50min
- 拷打实习项目,讲背景和流程。
- 如何应对流量洪峰。(缓存、消息队列)
- 故障排查的方法论。(看现象,内存满、cpu满?)
- 能不能做到自动化故障监控、排查(监控中间件、机器学习?他问我具体怎么做)
- java堆内存结构。(...)
- java堆内存的对象分配策略。(...)
- Full GC 触发条件。(...)
- Spring AOP 底层实现。(代理)
- innodb 索引结构。(B+树)
- 为什么不用b+树用B树。(数据存在叶子结点,叶子结点之间有链表)
- 隔离级别,脏读幻读不可重复读。(...)
- mysql索引、分库分表(...)
- 分库分表、加索引后还是很慢怎么办?(优化SQL、缓存)
- 单核cpu需要加锁吗?(需要,资源共享会导致不同的执行顺序结果不同)
- HTTPS底层加密过程。(加密过程忘记了)
- elasticsearch快速索引。(倒排索引)
- ES分片机制。(我哭了,你呢)
- 手撕算法题:给一个树和两个结点pq,找到他们最近的一个父亲结点。
0926 二面 60min
- 项目介绍,比较简略地问了一下背景和难点。
- MySQL 事务隔离级别。
- 四个隔离级别的差异可重复读和可串行化的区别,可串行化解决什么问题。可重复读和读已提交的区别。不可重复读和幻读的区别。
- 可重复读怎么实现(MVCC,怎么说的流畅一些,名称、过程)
- MySQL锁锁的分类和应用场景
- MySQL 索引分析 有 联合索引(abc),问条件中where a>1, c=1是否可以用索引
- MySQL执行效率分析 对一个字段id(整数,在字段上有索引)来说下面两种查询方式的效率(不考虑对其他sql语句的影响)
- where id >=1 and id <= 3
- where id in (1,2,3)
- 如何查看不同的MYSQL指令的运行效率(explain指令)(explain的一些字段)看效率是哪一个级别
- redolog undolog binlog 区别联系。
- redolog写入的时机,redolog和真实数据写入提交的整个过程。
- 存不存在redolog提交但是后面顶上来的擦不掉前面的情况。
- DNS解析流程(几个服务器之间的关系、顺序等)递归查询迭代查询。
- DNS是哪一层的协议?(应用层)。
- DNS在传输层是什么协议?(UDP)。
- 本地想看对某一个域名的解析结果,怎么查呢, 怎么查dns缓存。
- cookie和session的区别。
- cookie是怎么种在浏览器端的(set cookie, http协议响应头当中的字段)。
- 看某一个端口被哪一个进程占用了,用哪一个命令 (lsof -i)
- 已知ip和端口,用哪个指令来判断这个端口是可访问的 (telnet)
- ping是哪一层的应用?
- ping底层是什么协议? ICMP
- 手撕算法题:时间复杂度O(n),空间复杂度O(1),找到无序数组中的最小丢失正整数(lc hard)
链接:LC链接
1009 三面 40min
- 自我介绍。
- 实习项目,介绍了一下,也没深问。
- 手撕算法题 不重复最长子串长度。LC链接
- Java动态代理相关JDK和CGLIB的区别。JDK和CGLIB性能上的差异。
- 他们在底层上的实现上有什么差异造成了他们的性能差异。
- ConcurrentHashMap相关老版的分段表数据结构是怎么样的。
- 老版本的ConcurrenhashMap的分段表默认分多少段?为什么分16段。
- CAS相关CAS的问题。ABA问题
- 除了ABA之外有什么问题?竞争激烈时,一直自旋对CPU的开销很大
- 多路复用相关介绍一下多路复用。
- epoll 和 poll的区别。
- IO模型/IO多路复用。
- 如何用UDP协议实现TCP协议。
- 利用UDP模拟TCP连接要几次握手,为什么。
1011 感谢信
#字节##抖音电商##面经##凉经##字节跳动#