字节跳动 后端开发 一二面凉经
2022/08/26 字节一面 项目+八股 30min,题目说了思路,但是做了20多min卡壳没做出来 总共近1个小时(人生第一次工作面试)
- 项目 缓存怎么做的,怎么更新的
- 项目是多线程安全的吗,如何提高项目的并发量
- RabbitMQ以及Kafka有什么区别,为什么使用
- Redis的大Key怎么处理,有什么影响,对持久化有什么影响
- 数据库的事务特性,分别由什么保障的
- MVCC多版本并发控制
- 单链表排序:快排,归并
- 无反问。
2022/09/07 字节二面 55min GG
- 虚拟内存和物理内存的区别,为什么要使用虚拟内存,答了进程隔离,同时使进程的运行空间大于实际的物理空间。追问:不用虚拟内存也能进程隔离,也能进行内存页的换入换出,为什么还用虚拟内存。
- 项目的难点
- spring security的认证流程,权限如何设计的
- jwt过期了怎么办
- 联合索引(a,b)什么情况下有效,为什么?
- GC分区情况,为什么要分区,如何能够减少垃圾回收次数,程序应当如何设计,(没答上来如何减少GC)
- MySql和redis的使用场景,有什么区别(大概说一下,一个是持久化,一个基于内存做缓存,MySQL存储有关系的数据,redis是key-value类型的)
- redis的大key对redis持久化有什么影响
- 各种开发框架有什么作用,(对技术的封装,隐藏底层实现细节,提供简易的方法接口)
- 输入url到页面显示的过程
- 题目,连续数组和为5的倍数的子数组的个数(想到了用前缀和,但是没有完全想明白,后来面试官提示了一下,但是依旧没有想出来,说了个暴力的方法,一行代码都没有敲就结束了)