TCL java后端校招二面 70min

1.JWT的组成
2.redission锁和setnx锁的区别
3.其他的中间件实现分布式锁有了解吗
4.如果用mysql实现分布式锁怎么做(事务)
5.实习拷打
6.arraylist和linkedlist区别
7.jvm锁升级机制
8.偏向锁里是怎么存储锁的
9.对象头里有什么
10.CAS和AOS知道吗
11.jvm内存模型
12.线程不安全的时候一般是jvm哪里出问题了
13.内存溢出有遇见过吗
14.jvm里面设置哪个参数,就可以去gc了
15.内存利用率100%你怎么分析
16.设计模式你了解过哪些
17.快排思路讲一下讲一下
18.客户端登录的链路
全部评论
又是熟悉的快排。哈哈
点赞 回复 分享
发布于 01-14 15:30 广东
cas和aqs吧
点赞 回复 分享
发布于 2025-12-25 11:17 江苏
锁升级细节?
点赞 回复 分享
发布于 2025-12-24 15:16 云南

相关推荐

头像
03-23 20:11
已编辑
百度_高级研发工程师
这篇继续盘点一下后端转 AI 方向面试时,最容易被面试官“扒皮”的几个工程落地场景。全是实打实的干货,希望能帮兄弟们避坑。一、 RAG(检索增强生成)的全链路拆解面试官极其看重你怎么把企业文档变成知识库的。这块如果你只是个纯调包侠(只会调 LangChain 的 API),被稍微一深挖绝对露馅。我跟他完整勾勒了整条数据流水线:从文档解析,到文本切片(Chunking)。这里有个加分项:一定要提**“按长度切分并保留 Overlap(重叠区)”**,这样能保证上下文语义不断裂。至于向量库选型,别干巴巴地只说一个。我给出的方案是:数据量极大、分布式要求高的场景直接上 Milvus;而轻量级、或者需要和传统关系型数据强绑定的场景,用 pgvector。顺带提一嘴查询时用的是“混合检索(Keyword + Vector)”,召回的精准度会靠谱很多。二、 大模型幻觉与 Prompt 约束兜底面试官必问:大模型胡说八道、乱承诺怎么办?对付这个,咱们后端有常规的三板斧:控参数: 调低模型生成时的 Temperature 参数,直接把发散性和创造性压下来。强指令: 在 Prompt 里加入极其严格的系统级指令兜底(比如:“如果你不知道,请直接回答不知道,严禁编造信息”)。引入 Few-Shot(少样本提示),给几个标准的问答 Case,把它的输出格式和边界死死限制住。三、 核心痛点:用 RocketMQ 做异步解耦与削峰AI 接口耗时极长,这是通病。面试时必须明确态度:大模型打分或推理,绝对不能同步阻塞主流程。当时的解法是:用户发消息后,聊天服务只管快速落库,然后立刻往 RocketMQ 里丢一条异步消息返回给前端。后端的打分微服务作为消费者,在后台慢慢跑,调完大模型再去更新数据库。进阶防坑: 面试官听到 MQ 肯定会追问重复消费。记得补一句:“我在消费端的 Java 代码里做了防重,基于业务主键(SessionID + MsgID)在 Redis 里做了 Key 校验,或者在 MySQL 用唯一索引兜底。坚决不能让大模型对同一条记录重复打分,浪费 Token 算力。”四、 全双工流式交互(WebSocket + SSE)解决 AI 响应慢导致用户吃灰的问题,还得靠前端流式输出。我重点聊了用 SSE(Server-Sent Events)和 WebSocket 技术,把大模型的响应“逐字”推给前端,而不是傻等到全部生成完再返回,这样能把首字延迟(TTFB)压到极致。进阶防坑: 聊流式交互必问断线处理。我们在网关层(如 Netty 构建的 WebSocket 集群)加了心跳保活机制(Ping-Pong)。一旦检测到死链接,立刻释放后端线程池资源;同时客户端配合自动重连和断点续传逻辑,保证流式数据不丢字。
查看15道真题和解析
点赞 评论 收藏
分享
评论
1
8
分享

创作者周榜

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