1h35m再战淘天

面了一个半小时,面完就躺了,所以这个时候来写面经,凭记忆写吧,问的有点多实在记不全了。不过面试官是目前以来碰到的最好的面试官,其实蛮简单的我不知道他却说自己问的有点难了(感谢给台阶)。同时也感觉这位面试官相对以前遇上的感觉更重实际场景一些,很多问题根本我在常规的八股文里根本没遇上。没回答的题目主播默认是自己回答的还不错,这篇主要用来给自己复盘失误点,牛友们感兴趣可以自己去了解或者问我也行(但我比较菜,自己也可能讲不清楚)。

自我介绍

一些日常项目拷打,和前几天差不多,这里就不多说了(其实是记不得到底问了些啥了)
唯一记得的就是主节点挂了,从节点还没来得及同步数据该怎么办(这题提前看过大佬的面经和小伙伴的提问所以记得很清楚),给了两种方案:
一种是做半同步,保证主节点写入数据的同时至少有一个以上的从节点已经同步了数据。
第二是直接主从切换,做活动降级并流转其他接口页面,等重新校准redis数据之后再将活动重新上线,还说实际上redis挂掉的几率很小,第一种方式会一定程度的造成性能下降(相对于异步复制数据),所以最终可能会选择第二种方式。(这里感谢xfg的解决方案

开始超长时间的八股:

计网部分(这部分和os一直是薄弱项):
1.端口作用及底层原理。作用大概知道,但是原理完全忘了(主播八股都是靠guide背的,guide没重点提及的部分我就都忘了
2.知道作用在哪层吗。也是理所当然的不知道了。。
3.了解网络分层模型吗。
4.tcp在哪层。传输层,说了之后面试官就引导我说那端口作用在哪层的你也知道了吧
5.tcp报头有了解吗。只记得有几个标志位
6.http和https区别
7.https为什么安全
8.中间人可以截取https信息的ip地址吗。没刻意了解过这方面,面试官说没事,可以分析一下,我想了想不是很确定但还是说了应该可以。
9.有哪些常用状态码。
10.从输入url到展示页面有哪些步骤。
11.cookie了解吗。

os部分:
1.进程线程在java中的体现?感觉问的有点广,当时再确认了一遍,面试官让说说概念和区别也行。
2.假如在main方法中创建了子线程,当main方法调用完毕后子线程还在运行,java程序会停止吗。想了想蒙了个不会。
3.linux用过哪些常用命令。随便说了几个

java基础+spring:
1.说一下你对多态的理解。还好昨天刚被问到,一口气背了一大堆。
2.说一下你对aop的理解和实现逻辑。
3.JDK和CGLIB实现区别。果然只要我上一题不说区别面试官就会主动问嘿嘿
4.说一下类加载过程。
5.为什么要用双亲委派模型加载类。这里也没去思考过,当时临时想了重复利用类加载器减少资源消耗?(真的是现场编的,大脑一片空白)面试官说不是这个原因,不过也放过了我
6.如果程序在运行中,此时新加入一个类,且保证这个类能被程序扫描到,能在运行中加载吗。说实话又没想过这个问题,当时让我自己思考一下,主播也是想了想大部分类也是在需要用到的时候再去加载,所以回答了应该可以。
7.说一下jvm内存区域。
8.java内存模型了解吗(JMM)。这个直说记不得了,确实一直没被问过这个点,之前背的全忘了
9.synchronized底层原理。说了是利用monitor实现的,但详细忘了,还好面试官也没追问
10.synchronized可作用于哪些地方呢。
11.这里提了一嘴项目,说假如不采用任何锁(包括cas和其他乐观锁),有什么保证线程安全的方案。这里想了半天说了一些,但都被自己反驳了(大脑里面自己跟自己打架),最后也是没回答上,说了靠业务避免或者用事务,但是面试官说没回答道到点,但没关系
12.问了常见垃圾回收算法
13.CMS了解吗,用的什么回收算法,在哪些版本CMS是默认垃圾回收器,之后呢。哪些版本默认确实有点忘了
14.了解过哪些设计模式,讲一讲。说了一些,然后最后为了保险起见,详细举例用了单例

mysql+redis:
1.了解哪些nosql。直说比较了解redis
2.mongodb呢,我看你简历写了mongodb(属于是给自己挖坑了,后面更新简历把这里删了但平台没去更新):直说项目没有需要使用的场景,所以只是了解,没太多实际经验,面试官也没接着问
3.redis数据类型
4.zset数据结构。为什么用跳表,和其他相比?
5.缓存问题三件套。
6.布隆过滤器原理。可以解决什么问题。
7.分布式了解多少。说了了解的不多,事务和锁算比较了解。然后详细问了分布式锁的实现。
8.mysql索引底层,做对比。老熟人了
9.聚簇索引和非聚簇索引。这里给自己挖坑了,说非聚簇索引存的是数据指针,需要回个表。
10.覆盖索引呢,需要回表吗。这里纯属当时脑抽,开始自己小脑大脑打架,印象里覆盖索引不用回表,但是又想到存的不是指针吗,应该回表呀,最后只能向面试官阐述了我的思考,然后又得到了没关系还是看的不深、
11.事务隔离级别,性能。
12.为什么要设置四种隔离级别。应该就是想问并发事务问题,讲了讲这方面

这里已经一小时多了,我以为快结束了,结果开始手撕。
题目是用生产-消费者模型进行0-100数字依次打印,要求A线程是生产者,随机时间20ms-100ms生产消息。B消费2的倍数,C负责消费3的倍数和公倍数,D负责消费其他。面试官让可以说思路和用伪代码。我就先说了思路,但当时自己也还没完全想清楚实现方法:
1.用volatile+锁
2.用semaphore

第一种虽然我知道大概怎么做,但一直没实现过,而之前有用semaphore做过轮流打印数字,想着直接在这个基础上修改就行,最终选了这个。

结果也是为了背模板,一口气先把消费者写完了,一到实现具体printnum方法的时候就有些不熟了,当时为了简便,也没管单独抽象方法出来做复用了,直接用的lambda表达式加三个for循环,然后也没做命中处理,直接就每个数字三个线程都跑一次,谁能打印就打印,打印不了也给我跑!(好暴力)。然后面试官看时间也差不多了,也没让我继续写,让我说了说思路。然后这个时候才发现我甚至是直接用for循环产生数据的,完全忘了生产者了,不过还好当场讲清楚了优化方法,生产者生产之后根据逻辑把信号量交给对应消费者,消费者消费完毕后再把信号量交给生产者,这样也就不用做命中处理了。面试官看了看代码,听完思路觉得差不多了也是准备结束了

反问日常问业务(其实想不出来问啥)

面完立马5分钟跑到教学楼做实验去了,回来躺了一晚上不想学

(后续,25号约了二面)
全部评论
xd和我面的同一个部门啊。是不是面试官长得比较斯文,带个眼镜,然后眨眼睛好像有时候比较用力。说不会就会说没关系
4 回复 分享
发布于 2025-03-21 22:27 湖南
这么难啊,刚想投,感觉还得沉淀
2 回复 分享
发布于 2025-03-24 15:14 重庆
淘天一共几面啊佬
2 回复 分享
发布于 2025-03-21 08:22 四川
二面吗
2 回复 分享
发布于 2025-03-21 07:23 江苏
友友面的淘天哪个部门
2 回复 分享
发布于 2025-03-21 01:57 湖北
阿里系面试都长,面了两小时多。。面到1h40m我以为结束了,结果还要做算法题。。。
1 回复 分享
发布于 2025-04-28 20:55 北京
佬投的春招还是实习?
1 回复 分享
发布于 2025-03-27 11:47 湖北
二面咋样了
1 回复 分享
发布于 2025-03-25 20:25 安徽
大佬业务技术基础平台具体是做啥业务的呀
点赞 回复 分享
发布于 2025-04-15 20:41 四川
佬今天的面试题和我今天面字节的好像,如果看过佬的面试题,估计今天就拿下一面了
点赞 回复 分享
发布于 2025-04-09 00:18 四川
感觉好难啊
点赞 回复 分享
发布于 2025-04-08 10:20 广西
mark redis集群
点赞 回复 分享
发布于 2025-04-07 22:39 山东
硕士吗
点赞 回复 分享
发布于 2025-04-04 19:42 湖北
我勒个八股盛宴
点赞 回复 分享
发布于 2025-03-24 23:11 上海
接好运
点赞 回复 分享
发布于 2025-03-23 22:31 江苏
这个生产消费怎么考虑呀
点赞 回复 分享
发布于 2025-03-22 19:39 上海
好难啊 疯狂拷打
点赞 回复 分享
发布于 2025-03-22 14:31 江苏
拷打确实太大了,感谢佬的面经让我感受到了阿里的难度
点赞 回复 分享
发布于 2025-03-21 08:19 江苏
main方法那个要看线程是不是守护线程
点赞 回复 分享
发布于 2025-03-21 08:17 江苏

相关推荐

1. Guava Cache 和 Caffeine 分别使用了什么缓存淘汰算法​2. 实际项目里本地缓存命中率大概多少​3. 引入缓存带来的风险和解决方案​4. 缓存的读写策略​5. 如何保证缓存和数据库一致性​6. “先写缓存,再异步批量刷库”方案,除一致性外还有哪些潜在风险​7. 如何拦截恶意请求,设计防护手段避免缓存被恶意利用​8. 布隆过滤器原理,如何解决缓存穿透​9. 布隆过滤器误判概率大概多少,如何估计​10. 定时任务 5 分钟一轮询,任务执行超 5 分钟时,如何保证状态不丢失、不阻塞调度​11. 分布式 RPC 为什么要自定义协议,而不用 HTTP​12. 单机 QPS 1w+ 这个数据是怎么统计/得到的​13. RPC 项目目前瓶颈在哪​14. 了解哪些 HTTP 版本,各版本特性​15. HTTP 队头阻塞是什么​16. 队头阻塞是否只存在于 HTTP 层面​17. TCP 会不会存在对应阻塞问题​18. HTTP3 如何解决 HTTP2 在 TCP 上的队头阻塞​19. 为什么 HTTP3 基于 QUIC,而不继续在 TCP 上优化​20. TCP 如何实现可靠传输和流量控制​21. TCP 发送窗口如何根据接收窗口和拥塞情况动态调整,窗口结构如何维护变化​22. TCP 如何判断报文丢失,什么条件触发重传​23. TCP 除重传计时器外还有哪些计时器​24. AI 项目中降低大模型幻觉的具体优化方法​25. 大模型产生幻觉的底层技术原因​26. 算法题:Java 原生数组实现栈,实现常用操作
查看26道真题和解析
点赞 评论 收藏
分享
部门:国际化广告crm与交易平台记不全了,大概回忆下一面(3/26)总体上不是难,面试官人很好,在我回答后都会给一些他的看法实习相关提问,这一块面试官更多的是倾听,然后给我设计的东西说了一些他的看法和建议用消息队列,redis做什么kafka的幂等性如何实现,如果说消息已经写入了,消费者如何确保只消费一次(我按照如何确保消息只执行一次说的)讲一下数组和链表有什么区别如何判断一个链表有没有环,将思路就行,两种方法mysql事务的acid,具体都是干什么的还有一些可能忘记了手撕:用rand10实现rand7合并两个排序好的链表用递归可以吗合并k个有序链表手撕全撕,比较简单反问环节:对我有什么建议,面试官给了我很积极正向的评价业务介绍的也很详细面试完一小时约二面-----------------------------------------------------------------------------------------------------------------二面(3/30)面试官全程比较严肃讲一下实习,挑一段自认为做的最好的经历讲一下(问了没多久,就10分钟左右吧,可能面试官不是很感兴趣)了解哪些数据结构讲一下红黑树和b+树你知道mysql用的什么数据结构吗?为什么不用b树事务acid(不知道二面面试官为什么又问一下这个问题)我在讲acid的时候,说一致性时,提到了一个转账的场景,正好碰到了部门的业务,让我细说了一下主要就是一个场景题如何设计一个给账户充值或扣款的接口,考虑的详细一些这个内容我提到了幂等性的设计,后续针对这个场景题的提问都是幂等性相关的有用过ai coding吗,在什么场景使用,使用应该注意什么算法:判断一个链表有没有环(一方面是很简单,还有一方面是这不是一面考过了吗)反问:有什么建议,建议我实习的过程中可以不光了解自己做的东西,还要了解下整个团队做了哪些东西(可能是觉得我实习做的东西比较片面)部门业务:这个介绍的和一面面试官介绍的不太一样,提到了需要做一些数据分析咱们团队如何看待ai coding:目前各个公司,国内外都处在一个探索的阶段,ai coding一方面并没有那么智能,还有一方面就是没有一个使用的规范,可能每个人都有自己的使用习惯,这个可能还需要再探索探索。ai coding未必能让一个程序员干的事情更少,但是需要程序员掌握更多东西,但是ai的发展又很快二面的面试官没有什么反馈,基本上就是我说什么就听什么-----------------------------------------------------------------------------------------------------------------面完第二天问hr,说没通过,问什么原因,说是匹配度问题(这个团队用的是java,在字节比较少见,还有就是二面面试官提到了数据分析,可能是因为这两块吧)去年9月面字节面的非常糟糕,面评都脏完了,这两次面试应该算是洗回来了,又约到了这周四的面试,加油最后引用一句曹丞相的话"胜败乃兵家常事,此战我军虽失利,然北方仍由我所据,几十万兵马尚存,待重整旗鼓,来日再战必胜。"来日再战必胜!
momo_ciao:rand10实现rand7的话,如果出现大于7的数直接重试不就好了,没懂。
查看16道真题和解析
点赞 评论 收藏
分享
> 无意中接到了后端开发的主动邀约,我最近主要在准备前端开发,而且没有正式的做过后端开发,但还是接收了面试。面试主要考察计算机基础,没问后端八股,所以居然基本上答出来了自我介绍研二在读,主要技术栈是前端开发(熟悉Vue / 入门React),跨平台开发(了解Electron / 入门Flutter),和 Agent 开发(了解),常用语言 TypeScript / Python。之前都在准备前端面试,意外得到了后端面试邀约,因为未来有走全栈 / Agent开发的计划,所以斗胆参加了。问答1. 介绍 TCP 协议的连接和断开过程,为什么断开要进行 4 次挥手2. TCP 协议在完成四次挥手后是直接断开吗,要等待多久才断开3. 介绍计算机网络七层协议,为什么要分层4. 进程间通信有哪些方式5. 介绍死锁代码题1. 有 $n+1$ 个数,它们在范围 $[1, n]$,仅有一个重复的数,在 $O(n)$ 时间复杂度,$O(1)$ 空间复杂度内找出这个数2. 股票买卖时机,给定一支股票(T+1交易规则)的 $n$ 天的价格序列,买卖两次(卖出当天不能再买入),求最大盈利3. 给定序列,求最长上升子序列的长度和对应的子序列反问1. 部门的技术栈答:Golang2. 我之前主要准备的是前端开发,但是在 AI 时代对前端的未来比较悲观,未来准备走全栈开发或 Agent 开发。我比较纠结是接受前端开发的转正实习,还是准备全栈和 Agent 项目,未来找正式工作直接投递。您能从过来人的角度给我一些建议吗?答:(没有正面回答)主要是要确保掌握好相关理论基础,大厂对基础比较看重,工作中可能用到
查看10道真题和解析
点赞 评论 收藏
分享
评论
80
326
分享

创作者周榜

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