字节提前批国际电商一二三面
timeline
7.11 - 投递
7.14 - 一面
7.18 - 二面
7.21 - 三面(面试官意思是过了,下周有HR面,等了两天直接感谢信,无语了)
----都是记忆版,很多忘记了
0714 字节一面
1、自我介绍
2、介绍实习经历
3、如何快速上手实习工作
4、实习过程中遇到最棘手的问题,如何解决的?
5、挑一个最熟悉的系统介绍一下系统的整体架构
6、对当前数据库的设计觉得有什么不足或者可以改进的地方
7、当前的数据是分库分表吗?怎么做的?分库分表的路由规则是什么?
8、分库分表需要考虑什么问题?如何解决?
9、如何实现唯一id?雪花算法的实现原理?不同机房的数据库如何实现分布式id(Redis也不同)?
10、公司单张表最多的数据量是多大?
11、拥塞控制原理?流量控制原理?有哪些限流算法,分别介绍,漏桶算法和令牌桶算法的区别?
12、执行一条SQL的具体流程和原理?
13、知道哪些存储引擎,Innodb和Myisam的区别是什么?
14、公司里面的MySQL用的是什么存储引擎,是什么隔离级别?有没有进行修改?
15、目前电商很多都把隔离级别设置为了读已提交,为什么这样设置,优缺点?你们公司的是什么级别?
16、MVCC是什么,解决了什么问题?如何实现?
17、算法题:接雨水(最优解法)
0718 字节二面
1、自我介绍
2、拼多多的实习经历
3、如何实现的序列化反序列化,自定义通信协议以及完整的传输流程
4、NIO、BIO、AIO的区别
5、Netty和NIO之间有什么关系
6、订单业务主要做了什么?
7、如何防止超卖和重复购买的?如何保证秒杀过程中Redis和MySQL的库存一致性?参考方案
8、当一张优惠券去同时去购买两个课程,如何保证优惠券不会被重复使用?(分布式锁)
9、index(a,b,c),查询 a=1,c=1,b=1什么情况,a=1,b>1,c=1 情况(是从a下的所有b都找还是有优化),a>1 呢?
unique_index(a,b,c)
EXPLAIN SELECT * FROM abcd WHERE a > 1; # key_len=5
EXPLAIN SELECT * FROM abcd WHERE a = 1 AND b > 1 AND c = 1; # key_len = 10
EXPLAIN SELECT * FROM abcd WHERE a = 1 AND b = 1 AND c > 1; # key_len = 15
EXPLAIN SELECT * FROM abcd WHERE a = 1 AND b = 1 AND c = 1; # key_len = 15
10、怎么查看一条语句是否走了索引
11、extra 字段中的 using index 和 using where 的区别?
12、Java和C++有什么区别?
13、以下代码运行结果
14、算法题:剑指 Offer 46. 把数字翻译成字符串
15、反问
0721 字节三面
1、自我介绍
2、介绍一下自己的第一个项目的亮点(可以体现你技术的)
3、如何实现序列化的,序列化的原理是什么,为什么要序列化
4、自定义通信协议和传统的TCP通信有什么区别?
5、自己是如何解决粘包半包的?
6、Netty 和 Nio,为什么要使用Netty。
7、如何保证缓存数据一致性,实现缓存的原理,缓存使用的更新策略
8、出现不一致的情况如何处理,如何提高缓存的命中率
9、缓存击穿的原理以及如何去避免
10、介绍第二个项目的亮点
11、如何保证订单和支付记录的状态一致性?
12、对于一个支付系统而言,如何使其达到强一致性?(分布式事务:2pc、3pc)
13、算法题,最大峰值流量
14、反问
#字节##字节提前批##字节跳动#