字节教育二三面
字节二面:
自我介绍
问项目: 先问的redis 是用来做什么的, 然后到rocketMQ是做什么的,
然后选rocketMQ是为什么, 问了如果要做一个限流器,会用什么方式(我没答出来:一开始的思路是有延时队列的成分, 他给的回答是用redis,key值有时效性这个特点,可以来保证1秒内100qps这种情况,如果有需求的话,也可以是0.1秒内保证30qps这样。)然后问了,redis 过期的逻辑,主从数据通讯的方式,然后到数据落地的方式。
然后问了ssl加密过程(这里问了一个问什么需要用ca确认证书的方式拿到公钥,(我的回答是为了安全)), http1.0 1.1 2.0之间的区别(问了为什么1.0 1.1无法解决头部阻塞,(他告诉我是因为之前是使用文件协议,不像2.0用的二进制分帧))
mysql 问了联合索引的内部结构
一个偏应用的算法题:一个日志(结构为ip+时间)
去检索10秒内ip出现次数超过100 的ip
字节三面
自我介绍
算法1:青蛙跳石板,每个石板上有石子,青蛙每次跳3到5步,青蛙跳出石板喷到的最少的石子数量
2:https://leetcode.cn/problems/median-of-two-sorted-arrays/(lc原题,寻找两个正序数组的中位数,O(log(n + m))时间复杂度)
jwt
tcp fin和ack可以在一个报文中吗?回答了理论上可以
mysql 数据误删怎么还原(给的方案是找到最近的备份文件,然后通过bin日志和relay日志恢复剩下的数据)其实还可以回滚,我没想起来。
操作系统复制拷贝的过程?
sql题:姓名 学科 成绩 选出所有科目成绩都在80以上的同学的名字
智力题:一根绳子烧尽要1小时,怎么搞出1小时15分钟
僵尸进程
幻读