掌阅科技
二面 秋招面试体验最好的一次
💻面试岗位:服务端开发
❓面试问题:
1、首先是实习拷打 问最难和后续可以改进的地方
2、之后围绕实习出的题:
- redis的hash数据结构;(zplist + hashtable)然后说了扩容
- redisson分布式的原理了解吗?(lua 脚本 + SETNX + 底层数据结构)然后是它的可重入原理、看门狗机制以及线程中途挂掉时它的处理机制。
- 然后是mysql的索引机制 主要是问覆盖索引,最左前缀匹配 并且出了一道题;
- 现在有复合索引(a,b,c),说明下列条件使用索引的情况 a = 1 and b = 1; a = 1 and c = 1; b = 1 and c = 1; b = 1 and a = 1;这里有个坑是Mysql会优化排序,别问我为什么知道的
3、详细说一下网页请求的流程 还有https的基本流程
4、http 头部中的content-type (没错 我居然忘了给面试官整不会了)然后面试官问你在header里面知道些什么字段(然后就说把权限相关的字段说了一遍)
5、http中GET、POST、PUT、DELETE的区别
6、场景设计题:设计一个在一段时间里面登录失败次数超过3次就禁止1h的登录功能(最怕场景题了)
最开始用redis做一个过期时间 + 失败次数记录字段来实现 然后面试官说这是固定窗口 但是现在场景是动态窗口,然后我又挣扎了一次 最后面试官引导说围绕计算时间差会简单一点。然后照着面试官说的方案重复了一遍,然后貌似是为了给我找补让我在说瘦这种方案在实际应用中怎么用(我说的在权限框架里面加一个拦截器来处理)
7、然后是算法:链表相加 (画蛇添足多写了一个判断 难绷)
🙌面试感想:面试官很尊重人,全程都在引导,并且每次回答都会给反馈,而且开始的时候还给我说面试全程中我敲键盘不是在做别的,是在做面试记录。
反问:想问部门业务 才发现是跨部门面。
这次忘开录音了 有些问题没记住。
什么都不说了 开始许愿了。
查看5道真题和解析