虎牙 java go 一面
📍面试公司:虎牙直播
🕐面试时间:2026/1/15 4:30 - 6:00
💻面试岗位:后台开发工程师(Java/Golang)-AI 研发效能方向
❓面试问题:
- 自我介绍
- 拷打项目(被问到了,问了很多细节,忘了怎么做的了,要让我考虑项目的意义 做这个的价值)
- 项目用的什么注册中心? nacos
- 说了下nacos 的工作模式(此处忘记说了自己准备的注册中心排查案例,可惜, 好久没面试了) ,注册中心的工作模式如何工作的?
- 如果让你选择你选择什么模式的注册中心? AP/CP , AP , 此处up 举例 innodb的ACID 与seata的分布式事务/mysql-redis的缓存一致性问题 总结出我们一般都追求最终一致性,并且注册中心客户端会引入本地缓存可用列表,所以一般都采用AP
- 项目的架构,openfeign 调用链路? 介绍了http连接池
- open feign 这种是远程调用对吧, 负载均衡策略了解多少呢??? 静态/动态
- 一致性hash呢??? 了解吗???出现热点倾斜如何解决呢? 哈希槽虚拟节点了解吗? up指出虚拟槽CRC16 仍然不可解决热点倾斜,因为终究是落到该间隔区间
- up 主动提了一嘴redis cluster slot的上下线问题,跟常见的一致性hash 与 本地缓存一致性问题
- 服务A 调用服务B 出现异常排查思路? 比如说登录场景风控问题如何排查是什么原因导致的风控 进而 登录失败呢??? 引出了RequestId + Hint值, 不过未了解到 链路追踪 这个专业名词,面试官教予我的 ,比如说1000个服务调用链路,如何确保每个服务都可以搜到对应的日志呢? 也就是链路追踪的作用了
- 下游服务端逻辑完完整整是1s , 上游跟下游跟RPC框架都是完美无缺的, 已经优化好了? 你觉得吞吐量是多少? 如何进行优化吞吐量? 绕了很久
, 最终以tomcat 为例,200个线程,tomact 本身就是reactor模型了, 不需要优化。 所以一定是要充分利用CPU 的时间片, 所以我终于想到了, 想到了Java的虚拟线程跟go的协程,大概介绍了下协程跟虚拟线程, 提及了JDK21 虚拟线程遇到的问题
- 大概提了下用虚拟线程的直观效果跟 GMP调度模型
- 了解Java的 jstack 、 jmap 等等工具嘛? up只用过 stack、map、stat 这些,cmd 并未用过,如实回答
- 如何定位虚拟线程的状态? 没玩过,如实回答
- jvm 内存分区??? 提了一嘴main方法调用的栈帧等过程
- 堆外内存泄露如何定位?
- 反问
🙌面试感想:项目深度需要再次思考, 架构要清楚认知
#大家都开始春招面试了吗##发面经攒人品#
查看29道真题和解析