携程线下一面

投的java岗,投的时候看到岗位要求里是精通至少一门编程语言(Java/Golang),就带着我的golang版本的简历去面了。结果一上来就被让解释为什么拿着go简历投java,解释了一通后感觉对面好像不是很满意。
📍面试公司:携程
🕐面试时间:50min    
💻面试岗位:java后端开发
❓面试问题:
1. 那你用一两点总结一下,你觉得 Go 和 Java 最大的区别在哪里?
2. 那 RocketMQ 是怎么保证消息可靠性的?
3. 好的,那在使用 RocketMQ 重试功能时,需要注意些什么呢?
4. 那在失败场景下,如果出现大量重试,首先要考虑失败原因,比如是不是下游服务扛不住了,这也是一种可能的失败场景。如果这种情况下还一直在批量重试,可能会导致下游服务的压力进一步升级,那基于这方面考虑,我们有哪些手段可以预防或避免这种情况呢?
5. 你可以站在两个角度思考:一是作为下游 A 服务的提供者,二是作为调用 A 服务的消费方。假设这两个系统都是你负责的。那你要怎么保证整个系统的稳定性?分别对应的应该做哪些调整?
6. 这个暂停是出于什么考虑呢?那在什么情况下会选择暂停呢?这种情况下,按你说的,流量大的时候反而要暂停调用下游服务,这不是和实际业务需求不符吗?
7. 那暂停要停多久呢?什么时候恢复呢?
8. 那我再问一个问题,你多次提到 “根据监控来做决策”,但如果有很多业务场景、很多系统,都需要投入大量精力做监控,还要求看监控的人具备调控系统的能力,这显然不现实,怎么解决这个问题呢?
9. 自动告警机制确实是个好方法。那告警之后呢?系统后续该怎么运行,才能形成一个闭环,确保业务能继续推进?
10. 那什么时候需要人工去恢复系统正常运行呢?
11. 对,那你这个很很明显的一个问题就是人工嘛,这个我刚才也说了,要求人工有这个能力。它不仅仅是一个系统,它可能很多个系统。如果你采用这个架构去设计的话,你会有很多很多这种东西要去看。比如我们做卖票业务,假设有很多代理人,还有很多航司网站,国内有几十家航司,国外也有不少。那每一个航司它可能都是有一个类似的一个产品设计,对不对?那要是某天东航扛不住了,就要处理东航的问题;明天国航、南航等多家航司同时出问题,就需要很多人去处理。假设都用同一种方案,成百上千个系统都这样设计,人工根本忙不过来,这现实吗?就是一个我能做,10 个还勉强能行。当成百上千的时候,这个人还能玩得过来吗?我就把问题抛得这么严重,我们现在系统就是一个典型的生态,就会有这种问题。那我们该怎么去思考这个问题?
12. 那再问一个关于 RocketMQ 的问题,你之前提到了顺序消费,那 MQ 的消息有序性会在哪些阶段出现问题?什么情况下会导致消息无序?
13. 那再假设一个场景:生产者生成消息 ID 后,发送消息时突然挂掉了,因为之前提到用事务提交,这种情况下消息可能发送失败,导致消息断档。那消费方那边,他在消费的时候,他一直在等上一条消息。那消费者其实不用一直等,也可以处理后面的消息,但这样就会破坏有序性。那消费者怎么知道有一条消息中断了呢?比如消息 ID 从 1 到 10,发送 ID 为 2 的消息时失败了,消费者消费完 ID 为 1 的消息后,按逻辑该等 ID 为 2 的消息,但 ID 为 2 的消息永远不会来了。
14. 那不等的话直接消费到第四条消息怎么办,因为2后面还有34,如果不等2的话先消费4怎么办
15. redis使用经验讲讲
16. redis持久化机制有哪些
17. 缓存穿透、击穿、雪崩
18. 缓存击穿时,分布式锁是在什么时候加载的
19. 用分布式锁的话会让大量用户请求等待,有没有更好的解决方案
20. 多级缓存为什么能解决这个问题
21. MySQL事务隔离级别
22. mvcc怎么实现可重复读
23. MySQL的exist和in的区别
24. 为什么不用select * 查询
25. 索引失效的场景有哪些
27. 设计索引参考哪些原则

#发面经攒人品#
全部评论
学习到很多,点了
点赞 回复 分享
发布于 2025-10-16 22:01 重庆
面这么细的吗
点赞 回复 分享
发布于 2025-10-16 22:00 重庆
懵了
点赞 回复 分享
发布于 2025-09-29 14:47 四川

相关推荐

04-13 15:31
门头沟学院 Java
某游戏厂,面了 1h。大部分时间都是问纯八股,项目一点没问,手撕也很简单,网上搜到的面经大部分是C++八股文轰炸或者项目拷打。是不是因为一开始就对我不感兴趣所以干脆不为难我了面经如下:自我介绍游戏经历主要编程语言(我说的Java 但是岗位写的是C++/GoLang)求职方向是后端,为什么选择游戏服务器开发有Linux使用经历吗(项目部署)用过的Linux命令查看文件用什么命令,查看大文件呢?租服务器会关注服务器配置吗,如何确定这个配置能够满足项目部署的需求?会分析服务器使用情况吗(CPU、内存使用率),如何定位具体的线程资源使用情况?讲讲数组和链表结构、常用操作、时间复杂度为什么数组支持随机访问(内存连续+偏移量)讲讲栈和队列结构、区别、应用讲讲RabbitMQ如何用数组实现队列讲讲哈希,平时用过哪些哈希的数据结构哈希表的key如何获得什么是哈希冲突哈希底层原理了解吗面向对象三大特性现场写一下多态的例子讲讲平时用过的设计模式手撕反转链表、反转字符串反问的时候面试官说我可以自信一点()最后给点建议吧:纯八股 + 项目一点没问,大概率不是“不感兴趣所以不为难你”,更可能是:1,面试官习惯按固定流程走,先筛基础2,或者他觉得项目跟岗位匹配度不高,问了也白问,3,面了一个小时还给建议,说明你至少过了他的及格线。别自己加戏
查看23道真题和解析
点赞 评论 收藏
分享
04-13 09:20
已编辑
电子科技大学 C++
自我介绍 实习1. 去上一家公司实习的目的?2. 为什么离职?3. 上一家公司职场氛围和交流氛围如何?4. 上一家公司实习主要的工作背景和产出?5. 介绍一下上一家公司实习的背景和原理6-12. 实习拷打13. 上一家公司有没有 AI 提效工具?有没有 AI 培训?其他员工有没有相关的使用经验?14. 你为什么在实习开发中使用 AI 工具吗?15. 总结一下上一家公司实习你的收获是什么?16. 实习期间,你遇到最困难的一个点?你是如何解决的?项目1. Raft 项目的动机是什么?算法无闲聊1. 你转专业了吗?还是自学?2. Golang 和 C++ 哪个用得比较多?3. 面试官介绍 Golang 和 C++ 在后端和鸡架开发之间的差异...4. 能实习多久?专业其他同学的规划是读研还是就业?5. 你为什么想要就业?你不用上课吗?6. 有没有想过跨考?7. 反问总结第一次约面后,面试官临时有会,面试前 5 分钟取消会议。推迟了一天,然后又迟到 10 分钟。自我介绍完就感觉像是 KPI 面了,不过没关系,感觉还是很好为人师的面试官,反问环节直接让他帮我把从 C++ 到 Golang 学习路线规划了一下,也请教了一下应该阅读哪些书籍。
发面经攒人品
点赞 评论 收藏
分享
评论
6
34
分享

创作者周榜

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