字节一二三面凉经
一面8月2日、二面8月9日、三面8月24日,一二面都是第二天hr通知通过的,8月30日收到问卷,问了hr说面试没通过,呜呜呜好难呀。
求好心的hr捞一捞呀!!!岗位开发或测开都可以,base北京上海杭州均可!!!
一面47min
1. 项目中使用caffeine使QPS提升50多倍怎么对比的?
2. 在什么场景下使用本地缓存比较好?使用本地缓存除了速度上的提升,还有其他什么优势吗?
3. 如何保证数据库和redis数据一致性?
4. 本地缓存的数据是如何更新的?如果有多台服务器,如何更新本地缓存?面试官的想法是多台服务器的本地缓存是一样的,然后我就说kafka给每台服务器都发一个消息删除,然后我的开始的想法是,每台服务器上的本地缓存是不一样的?比如存储的是用户信息,通过用户的唯一标识+nginx使请求是始终打到一台服务器上,删除时只需要删除本机的本地缓存就可以了。
5. 用户id哈希选择服务器,那服务器增加了怎么办?一致性哈希(哈希不均匀)、加入虚拟节点的一致性哈希。
6. 每台服务器都有本地缓存、也有mysql之类的,怎么成本相对低的、业务又可以接受的处理这个事?让我考虑一下?
7. 对http协议的理解?不同版本之间的区别?https? 状态码500?503?
8. zset的底层实现?查第m名到第n名的时间复杂度?logn
9. redis的内存淘汰策略?
10. 算法题:三数之和。
二面 1h30min
1. 如果比较java和python语言,你会从哪些方面比较(语法、内存模型、线程模型、生态、适用范围)?分别有什么特点?
2. 如何理解面向对象的?面向对象和面向过程的区别?
3. java的内存模型?说说happens before原则?
4. 垃圾回收算法有哪些?如何标记对象?哪些可以做GCRoot?
5. volatile?为什么需要有序性?为什么执行的顺序和代码的顺序不一致?为什么会有指令重排?
6. classloader的作用?什么场景下需要自定义classloader?类加载的步骤?两个class相等的条件是什么?(类的完整类名必须一致同时加载这个类的classloader必须相同)
7. 线程池?参数设置?
8. 加锁的过程?synchronized?reentrantlock?区别和使用场景?公平锁和非公平锁的使用场景?
9. spring?什么场景下用过AOP?实现方法?
10. 索引原理?聚集索引和非聚集索引?B+的结构?mysql锁?间隙锁?为什么要有事务?redis是如何实现事务的?
11. mysql如何实现事务的?
12. 原创代码题-类似于controller的请求映射处理
三面40min
1. 项目相关,针对项目中的每一个功能进行提问
说一下登录过程?
cookie和session区别?
如何防止恶意登录?
帖子表和评论表的结构、字段?
帖子或评论量级比较大时存在什么问题?分库分表?
内容检索怎么做的?
ES写入失败怎么办?
2. TCP为什么是可靠的?
求好心的hr捞一捞呀!!!岗位开发或测开都可以,base北京上海杭州均可!!!
一面47min
1. 项目中使用caffeine使QPS提升50多倍怎么对比的?
2. 在什么场景下使用本地缓存比较好?使用本地缓存除了速度上的提升,还有其他什么优势吗?
3. 如何保证数据库和redis数据一致性?
4. 本地缓存的数据是如何更新的?如果有多台服务器,如何更新本地缓存?面试官的想法是多台服务器的本地缓存是一样的,然后我就说kafka给每台服务器都发一个消息删除,然后我的开始的想法是,每台服务器上的本地缓存是不一样的?比如存储的是用户信息,通过用户的唯一标识+nginx使请求是始终打到一台服务器上,删除时只需要删除本机的本地缓存就可以了。
5. 用户id哈希选择服务器,那服务器增加了怎么办?一致性哈希(哈希不均匀)、加入虚拟节点的一致性哈希。
6. 每台服务器都有本地缓存、也有mysql之类的,怎么成本相对低的、业务又可以接受的处理这个事?让我考虑一下?
7. 对http协议的理解?不同版本之间的区别?https? 状态码500?503?
8. zset的底层实现?查第m名到第n名的时间复杂度?logn
9. redis的内存淘汰策略?
10. 算法题:三数之和。
二面 1h30min
1. 如果比较java和python语言,你会从哪些方面比较(语法、内存模型、线程模型、生态、适用范围)?分别有什么特点?
2. 如何理解面向对象的?面向对象和面向过程的区别?
3. java的内存模型?说说happens before原则?
4. 垃圾回收算法有哪些?如何标记对象?哪些可以做GCRoot?
5. volatile?为什么需要有序性?为什么执行的顺序和代码的顺序不一致?为什么会有指令重排?
6. classloader的作用?什么场景下需要自定义classloader?类加载的步骤?两个class相等的条件是什么?(类的完整类名必须一致同时加载这个类的classloader必须相同)
7. 线程池?参数设置?
8. 加锁的过程?synchronized?reentrantlock?区别和使用场景?公平锁和非公平锁的使用场景?
9. spring?什么场景下用过AOP?实现方法?
10. 索引原理?聚集索引和非聚集索引?B+的结构?mysql锁?间隙锁?为什么要有事务?redis是如何实现事务的?
11. mysql如何实现事务的?
12. 原创代码题-类似于controller的请求映射处理
三面40min
1. 项目相关,针对项目中的每一个功能进行提问
说一下登录过程?
cookie和session区别?
如何防止恶意登录?
帖子表和评论表的结构、字段?
帖子或评论量级比较大时存在什么问题?分库分表?
内容检索怎么做的?
ES写入失败怎么办?
2. TCP为什么是可靠的?
3. 反问?
------------------------------------------
更新:被字节Data捞起来面试了
#字节面试##字节提前批#