4.15 暑期腾讯WXG三面,吓死人

有见过上来就写一个完整的线程池的吗?面试官一张嘴我差点尿了

Q1:前面两个面试官已经提问了项目,咱们直接写一道题吧,线程池,不会c++可以用你会的语言。。。。PS:shit

30min later。。。

Q2:java21中的虚拟线程应用到你的项目中会有什么变化?PS:holy shit,前面java21没听清,就听到个虚拟线程,我没听这个概念,我人都傻了
A:sorry面试官,我没有思考过这个问题。。。

Q3:如果Redis的Pub/Sub因为某些原因没有传递到,你的caffeine会不会被读取到过期数据
A:设计了很短的过期时间 + 引入消息队列重试机制

Q4:如果Redission分布式锁的持有者宕机,看门狗没有续期,10000个QPS会全部达到DB上吗
A:不会,因为锁无人持有,会有一个线程抢到锁,其他线程阻塞,等待会写,所以只有一个线程能到DB。PS:不知道为啥我说完又问了我一遍,感觉没说错啊,我就说的更详细了一点。。

Q5:你试用Canal监听binlog实现ES和MySQL的一致性,如果Canal因为MySQL的Update太多导致Canal同步跟不上怎么办
A:只想到了把Canal监听binlog的方式改为row,加速读取,然后对MySQL进行取舍(因为我问了下,MySQL主从是否一致,面试官说可能不一致),因为MYSQL主从同步有四个策略,当选择超半数同意才接受的方案时,如果Update操作太多,那么直接拒绝。还有考虑数据库分库分表,分担压力,避免所有更新请求打到少数数据库上。只想到这么多,前者回答的肯定不够,但是对Canal了解不多,没招了

Q6:了解aqs吗,怎么实现一个Reentrantlock
A:内部类继承aqs,针对state,队列进行设计实现公平锁或非公平锁,重写tryAccique和tryRelease,对外暴露接口

Q7:你项目几个人做的,都是实验室项目吗?

Q8:反问环节
A:多久出结果,核心业务是什么,还有技术面吗?PS:一周内出结果,后面是hr面,业务关于支付等等没注意听,实习两个月之后有技术面

本牛子0实习,bg:29,希望能通过吧。这是最后一个面试了,前面全挂了,牛友们可以看看我的其他帖子,分享了一些比较难的面经,真难绷#发面经攒人品# #牛客AI配图神器#
全部评论
强烈推荐!这个笔记写得很清晰 http://github.com/AccumulateMore/CV
1 回复 分享
发布于 04-17 15:49 广东
感觉线程池是高频的问题啊
点赞 回复 分享
发布于 昨天 17:16 陕西
校友好强
点赞 回复 分享
发布于 04-17 13:59 山东
实习两个月后还有面试????面委面试改到实习两个月之后了吗
点赞 回复 分享
发布于 04-17 12:27 湖北
通过了吗
点赞 回复 分享
发布于 04-16 21:05 北京
总时长50min左右,写了150行代码,真是力竭了
点赞 回复 分享
发布于 04-15 22:50 黑龙江

相关推荐

不愿透露姓名的神秘牛友
04-18 15:10
点赞 评论 收藏
分享
评论
9
18
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务