【凉经分享】淘宝买菜--Java后端实习
4.7投递简历,测评
4.10 笔试
笔试:选择+3编程
-------------------------------------------------------------------------------------------------------
4.11 一面
早上10点多突然发的面试邀请
面试官人很好,我全程各种嘴瓢宕机,还给我引导解答
自我介绍
拷打项目
项目那些地方用到了MQ
MySQL的QPS只能200,但是现在接口QPS有2000个,使用MQ如何防止数据库被打穿,其实想问的就是MQ的削峰填谷,限流。(我一直在强调我是为了提高QPS和相应时间,绷)
限流算法(计数器,令牌桶,漏斗,Redis时间窗口)
为什么使用全局异常处理器(提高可维护性,优化用户体验)
那些地方使用到Redis
检查异常和非检查异常
既然用了ThreadLocal保存用户信息,默认是一个用户对应一个线程,现在要使用线程池并行执行多个操作,假如每个操作都需要你这个ThreadLocal里的数据信息,你要怎么实现(胡言乱语)
Redis的多线程,IO多路复用(说的Linux操作系统的多路复用模型。。。)
多个请求去访问Redis,创建了多个socket,Redis用多少个线程去处理这些请求(Redis的单线程)
Redis的过期删除策略(只记得惰性删除,宕机)
AOF重写(吟唱)
MySQL
MySQ隔离级别(可重复读突然宕机,不知道怎么解释,又绷)
脏读,幻读,不可重复读 (幻读我解释的是同一个事务两次读取的记录数不一致,面试官说不对,可是我记得是这样吧?)
不使用串行化,如何解决幻读(我说了快照读用MVCC可以避免,当前读宕机了,但是面试官说这不算是解决办法,那我就不知道了)
TCP拥塞控制(一开始记混了说了流量控制,后来继续补上。。。,有点混乱)
手撕:
n个数,一个target,找出所有和为target的组合,不能重复选同一个数
https://leetcode.cn/problems/4sjJUc/description/
反问:
建议:八股再好好看看,别这么紧张(哭死)
部门:买菜
口头说过了,半小时内就约二面了,好快
这次面试哪里不熟就被问到哪里,很难绷得住,最近天天测评笔试,感觉给人都做麻了。
面试体验很好,面试官人很好感觉还是面试官留情了才给我过的,八股还是好难背
-----------------------------------------------------------------------------------------------------
4.12 二面
平时如何学习技术
如何理解前后端分离(没怎么考虑过,面试官说我的理解太片面了)
对前后端的理解具体指的是什么
验证码与前端建立半长连接
前后端半长连接是怎么实现的(sse)
和websocket有什么区别
对本地缓存的理解,优劣,为什么使用
既然本地缓存性能这么高为什么还要使用Redis
本地缓存和Redis一起使用的场景
多级缓存的情况下,优先访问那个比较合适
Redis作为缓存的弊端
缓存的三种问题(穿透,击穿,雪崩)
缓存热点key问题
全局异常处理,如何设计,是什么样的处理策略
处理异常的方式,什么情况适合抛出,什么情况用try,catch(没想起来)
对于代码健壮性的理解,对鲁棒性的提升(宕机)
缓存一致性问题,先写数据库再删缓存一定万无一失吗
用ThreadLocal保存用户信息为什么不直接存到本地缓存中?
ThreadLocal的实现原理,机制
线程池中如何使用ThreadLocal内的信息
把当前线程的Threadlocal信息保存到线程池的ThreadLocal里,结束时再调用remove
如何保证在协同开发的过程中,防止协调者忘记调用remove导致问题,如何尽量规避,无感(有点宕机,其实是知道的,但是不知道回答的什么东西)
(封装一个异步工具类,在类中定义执行方法,用try调用线程池的执行,finally调用remove)
Https为什么能实现数据安全
讲一下MySQL的索引
场景题:
微信抢手气红包,如何设计
如何实现随机的极差不要太大,尽可能减少手气的差距,就是别差的太离谱
反问:评价,学习
面试体验还是很不错的,面试官人也很好,但是哥们太菜了,感觉回答的都不是很好,难绷,但是感觉确实学到很多东西
希望能进下个流程吧
-------------------------------------------------------------------------------------------
4.16 三面 寄
登录模块如何实现
session存在cookie上如何保证安全
https如何保证传输的安全
跨域请求,不同项目如何实现一个账号同时登录(应该是问的SSO,倒是没了解过)
手撕:手写一个Cache,淘汰策略,具体实现
为什么选择做这个社区项目
为什么是社区类型的项目
有没有了解过计算机的前沿技术
了解AI的那些方面的技术
有没有用过AI的产品
反问
寄了没什么好说的了
----------------------------------------------------------------------------------------------------------------
#实习##面经##淘天#