5月19日,哈啰后端一面
(全程50min,面试官也比较友好,没太为难)
1、自我介绍
2、两道算法(奇数一端偶数另一端,手撕快排)秒了
3、项目(点评):
3.1 缓存一致性做的,答:旁路缓存加延迟双删
3.2 压测如何做的?Jmeter+csv文件
3.3 三大缓存问题在哪个方法上有体现?答:查询店铺信息有体现,问:具体说说,答:随机化店铺过期时间(防止缓存雪崩),缓存null值和布隆过滤器(防止缓存穿透),两种方案:1、分布式锁+同步重建 (其他请求抢锁失败自旋等待)2、分布式锁+异步重建缓存(其他请求抢锁失败返回旧值),接着问:你聊到了自旋,讲讲CAS、synchronized,答:开始吟唱八股
3.4 redis的网络模型,答:往epoll、reactor那扯的
3.5 canel原理,答:伪装从节点,binlog日志文件主从同步,接着问:canel是增量更新,如果表结构发生了变化,canel还可以监听的到么,怎么做补偿?瞎答:(这个之前没了解过,就随便说了说)如果表结构发生变化,canel是可以监听到的,通过binlog日志文件,但是表结构的变化属于比较重大的变化了,可能涉及到版本更新的问题,先下线更新完了再上线,瞎扯了一下, 或者人工干预在线上的时候,去根据新的表结构调整redis中的数据格式。
4、反问环节
#春招#