分页题目
腾讯相关面试题第 5 页
为什么会使用 Redis 实现消息队列?它适合哪些场景?
为什么会使用 Redis 实现消息队列?它适合哪些场景?这道腾讯牛客题的关键是围绕“Redis 实现消息队列场景”讲清概念、机制、取舍和边界。Redis 可以做轻量消息队列,适合延迟敏感、吞吐中等、业务可接受 at-least-once 和重复消费的场景。常见实现包括 List、Pub/Sub 和 Streams,其中 Streams 更适合可靠消费。
Java 中实现多线程有哪些方式?
Java 中实现多线程有哪些方式?这道腾讯牛客题的关键是围绕“Java 线程与多线程实现方式”讲清概念、机制、取舍和边界。Java 实现多线程可以从 Thread、Runnable、Callable/Future、线程池和 CompletableFuture 等方式回答。更底层看,Java 线程通常映射到操作系统原生线程,由 JVM 负责创建、调度协作、栈管理和状态维护。
数据库性能优化通常从哪些方向入手?
数据库性能优化通常从哪些方向入手?这道腾讯牛客题的关键是围绕“数据库性能优化方向”讲清概念、机制、取舍和边界。数据库性能优化要从定位、SQL/索引、表结构、事务锁、连接池、缓存、架构扩展和硬件参数多层看。先用慢查询日志、监控和执行计划定位瓶颈,再决定是改 SQL、加索引、拆表、调连接池还是做缓存/读写分离。
关系型数据库和非关系型数据库有什么区别?
关系型数据库和非关系型数据库有什么区别?这道腾讯牛客题的关键是围绕“关系型数据库与 NoSQL 对比”讲清概念、机制、取舍和边界。关系型数据库强调结构化 schema、SQL、表关系、Join 和 ACID 事务,典型如 MySQL/PostgreSQL;非关系型数据库按模型分为 KV、文档、列族、图数据库等,更强调灵活 schema、水平扩展和特定访问模式。
Redis 主从复制的原理是什么?
Redis 主从复制的原理是什么?这道腾讯牛客题的关键是围绕“Redis 主从复制原理”讲清概念、机制、取舍和边界。Redis 主从复制通过从节点向主节点发起 PSYNC,同步主节点数据和后续命令流。首次或断点不可用时做全量同步,主节点生成 RDB 发送给从节点;断线重连且 backlog 足够时可做部分重同步。
业务中为什么会引入 Redis?适合哪些典型场景?
业务中为什么会引入 Redis?适合哪些典型场景?这道腾讯牛客题的关键是围绕“Redis 典型业务场景”讲清概念、机制、取舍和边界。业务引入 Redis 通常是为了低延迟访问和高吞吐状态管理。典型场景包括高频读缓存、计数器、排行榜、会话、分布式锁、限流、去重、延迟任务和轻量消息队列。
Redis 访问变慢时如何排查和优化?
Redis 访问变慢时如何排查和优化?这道腾讯牛客题的关键是围绕“Redis 访问变慢排查”讲清概念、机制、取舍和边界。Redis 变慢要按客户端、网络、Redis 命令、数据结构、内存、持久化和系统资源逐层排查。不能只说扩容或加机器,先要确认慢在连接、排队、执行、返回还是下游依赖。
Java 线程是如何实现的?
Java 线程是如何实现的?这道腾讯牛客题的关键是围绕“Java Thread 到 OS 线程实现”讲清概念、机制、取舍和边界。现代 HotSpot 中 Java Thread 通常映射到操作系统原生线程,JVM 内部有 JavaThread/OSThread 等结构承接 Java 层 Thread 对象和 OS 调度实体。
Redis 如何保证消息可靠性?
Redis 如何保证消息可靠性?这道腾讯牛客题的关键是围绕“Redis 消息队列可靠性边界”讲清概念、机制、取舍和边界。Redis 可以做轻量消息队列,但可靠性取决于使用 Pub/Sub、List 还是 Streams。Pub/Sub 基本不保存离线消息,List 需要自己设计确认和重试,Streams 支持 consumer group、pending list 和 ACK,更适合需要可靠消费的场景。
HTTPS 中 TLS/SSL 的握手和加密原理是什么?
HTTPS 中 TLS/SSL 的握手和加密原理是什么?这道腾讯牛客题的关键是围绕“HTTP、HTTPS 与 TLS 安全链路”讲清概念、机制、取舍和边界。HTTP 是明文应用层协议,HTTPS 是 HTTP 运行在 TLS 之上。TLS 通过证书链验证服务器身份,通过密钥交换协商会话密钥,后续数据主要用对称加密传输,同时用完整性校验防止篡改。
TCP 连接关闭过程是什么,半关闭状态下还能否通信?
TCP 连接关闭过程是什么,半关闭状态下还能否通信?这道腾讯牛客题的关键是围绕“TCP 四次挥手与半关闭”讲清概念、机制、取舍和边界。TCP 关闭是双向独立关闭的过程,典型四次挥手是主动方发送 FIN,对端 ACK;对端也准备关闭时发送 FIN,主动方 ACK 后进入 TIME_WAIT。半关闭表示一端已经关闭发送方向,但仍可接收对端数据。
数据库中如何使用 MD5 哈希存储字段?有哪些安全风险?
数据库中如何使用 MD5 哈希存储字段?有哪些安全风险?这道腾讯牛客题的关键是围绕“数据库字段 MD5 哈希存储风险”讲清概念、机制、取舍和边界。MD5 是确定性哈希,不是加密。数据库中可用 MD5 存储某些字段的摘要用于去重或脱敏匹配,但不能用于安全保存密码,因为 MD5 快、可暴力破解,并且存在碰撞和彩虹表风险。
常见排序算法中哪些是稳定排序?
常见排序算法中哪些是稳定排序?这道腾讯牛客题的关键是围绕“排序稳定性”讲清概念、机制、取舍和边界。排序稳定性指相等 key 的元素在排序后仍保持原来的相对顺序。常见稳定排序包括冒泡排序、插入排序、归并排序、计数排序、基数排序和桶排序的稳定实现;常见不稳定排序包括快速排序、堆排序、选择排序和希尔排序。
Redis 的底层数据结构有哪些?跳表是如何实现的?
Redis 的底层数据结构有哪些?跳表是如何实现的?这道腾讯牛客题的关键是围绕“Redis 数据结构与底层编码”讲清概念、机制、取舍和边界。Redis 常用对外数据结构包括 String、List、Hash、Set、ZSet、Bitmap、HyperLogLog、Geo 和 Stream。回答时还要区分对外类型和底层编码,例如 SDS、listpack、quicklist、dict、intset 和 skiplist。
JVM 堆内存分配如何保证线程安全?
JVM 堆内存分配如何保证线程安全?这道腾讯牛客题的关键是围绕“JVM 堆对象分配的线程安全”讲清概念、机制、取舍和边界。JVM 堆内存分配保证线程安全,常见方式是优先使用 TLAB 给每个线程分配一小块私有 Eden 区域,线程在自己的 TLAB 里用指针碰撞快速分配;TLAB 不够或不适用时,再走 CAS 加失败重试或加锁的慢路径。
什么是数据库事务?事务的 ACID 特性是什么?
什么是数据库事务?事务的 ACID 特性是什么?这道腾讯牛客题的关键是围绕“数据库事务与 ACID”讲清概念、机制、取舍和边界。事务是一组数据库操作的逻辑单元,要么全部成功提交,要么失败回滚。ACID 分别是 Atomicity 原子性、Consistency 一致性、Isolation 隔离性和 Durability 持久性。
Go 中主协程如何等待其他协程执行完再继续?
Go 中主协程如何等待其他协程执行完再继续?这道腾讯牛客题的关键是围绕“Go WaitGroup 等待 goroutine”讲清概念、机制、取舍和边界。Go 中主 goroutine 等待其他 goroutine 最常用 sync.WaitGroup:启动前 Add 任务数,每个 goroutine defer Done,主 goroutine 调 Wait 阻塞直到计数归零。需要错误传播和取消时用 errgroup.WithContext 更合适。
MySQL 常见存储引擎有哪些?它们有什么区别?
MySQL 常见存储引擎有哪些?它们有什么区别?这道腾讯牛客题的关键是围绕“MySQL 存储引擎差异”讲清概念、机制、取舍和边界。MySQL 常见存储引擎包括 InnoDB、MyISAM、Memory、Archive 和 CSV。当前默认主流是 InnoDB,支持事务、行级锁、MVCC、外键和崩溃恢复;MyISAM 不支持事务,主要是表级锁。
同一个对象中两个 synchronized 方法分别被两个线程调用时会发生什么?
同一个对象中两个 synchronized 方法分别被两个线程调用时会发生什么?这道腾讯牛客题的关键是围绕“同一对象 synchronized 实例方法锁竞争”讲清概念、机制、取舍和边界。同一个对象里的两个 synchronized 实例方法使用的是同一把对象 monitor 锁。两个线程分别调用同一对象的两个 synchronized 方法时会互斥,先获得锁的线程执行,另一个线程进入 BLOCKED 等待。
SSL/TLS 的基本原理是什么?
SSL/TLS 的基本原理是什么?这道腾讯牛客题的关键是围绕“HTTP、HTTPS 与 TLS 安全链路”讲清概念、机制、取舍和边界。HTTP 是明文应用层协议,HTTPS 是 HTTP 运行在 TLS 之上。TLS 通过证书链验证服务器身份,通过密钥交换协商会话密钥,后续数据主要用对称加密传输,同时用完整性校验防止篡改。
什么是聚簇索引?
什么是聚簇索引?这道腾讯牛客题的关键是围绕“InnoDB 聚簇索引”讲清概念、机制、取舍和边界。聚簇索引是数据行按索引顺序存储的索引结构。在 InnoDB 中,主键索引通常就是聚簇索引,叶子节点保存完整行数据;二级索引叶子节点保存二级索引列和主键值。
AQS 的核心原理和常见实现类有哪些?
AQS 的核心原理和常见实现类有哪些?这道腾讯牛客题的关键是围绕“AQS 同步框架”讲清概念、机制、取舍和边界。AQS 是 JUC 中构建同步器的基础框架,核心是用 volatile state 表示同步状态,用 CAS 修改状态,用 CLH 变体队列管理获取失败的线程。ReentrantLock、Semaphore、CountDownLatch 等都复用这套框架。
TCP 三次握手和四次挥手的流程是什么?
TCP 三次握手和四次挥手的流程是什么?这道腾讯牛客题的关键是围绕“TCP 建连与关闭状态机”讲清概念、机制、取舍和边界。TCP 三次握手负责建立连接和同步双方初始序列号;四次挥手负责分别关闭两个方向的字节流。建连关注 SYN、SYN+ACK、ACK 和双方收发能力确认;关闭关注 FIN、ACK、半关闭、CLOSE_WAIT 和 TIME_WAIT。
UDP 丢包通常有哪些原因,如何排查和缓解?
UDP 丢包通常有哪些原因,如何排查和缓解?这道腾讯牛客题的关键是围绕“UDP 丢包排查与缓解”讲清概念、机制、取舍和边界。UDP 丢包原因要从发送端、网络和接收端分层看:应用处理慢、socket buffer 太小、网卡 drops、MTU/IP 分片、网络拥塞、NAT/防火墙、接收端队列溢出都可能导致丢包。
树和堆这两种数据结构有什么区别?
树和堆这两种数据结构有什么区别?这道腾讯牛客题的关键是围绕“树与堆数据结构区别”讲清概念、机制、取舍和边界。树是一类层级数据结构,每个节点可以有子节点;堆通常是满足堆序性质的完全二叉树,是树的一种特殊形式。最大堆父节点不小于子节点,最小堆父节点不大于子节点。
TCP 如何保证可靠传输?
TCP 可靠传输依赖一组机制共同保证:序列号和确认号负责定位数据,重传机制处理丢包,滑动窗口控制发送节奏,校验和发现损坏,按序交付与去重处理乱序和重复,拥塞控制保护网络稳定。
同题还出现在 1 个公司岗位
synchronized 锁升级的过程是什么?
synchronized 锁升级的过程是什么?这道腾讯牛客题的关键是围绕“synchronized 锁升级过程”讲清概念、机制、取舍和边界。synchronized 锁升级是 JVM 为不同竞争强度优化 monitor 成本的过程,常见路径是无锁、偏向锁、轻量级锁、重量级锁。现代 JVM 版本对偏向锁支持有所变化,但面试回答仍要说明锁状态随竞争变化而升级。
SQL 语句执行效率低时,如何分析并优化?
SQL 语句执行效率低时,如何分析并优化?这道腾讯牛客题的关键是围绕“SQL 查询优化与索引失效判断”讲清概念、机制、取舍和边界。SQL 慢或大批量查询要按定位、解释、改写、验证的流程处理:先从慢查询日志定位 SQL,再用 EXPLAIN/EXPLAIN ANALYZE 看访问类型、索引、扫描行数、回表、排序和临时表。
JavaScript 数据类型有哪些?堆和栈在存储上有什么区别?
JavaScript 数据类型有哪些?堆和栈在存储上有什么区别?这道腾讯牛客题的关键是围绕“JavaScript 数据类型与堆栈存储”讲清概念、机制、取舍和边界。JavaScript 数据类型可以先分为原始类型和引用类型。原始类型包括 undefined、null、boolean、number、bigint、string、symbol;对象、数组、函数等属于引用类型。堆和栈的区别要从变量绑定和对象存储解释,而不是简单说某个类型绝对在栈上。
推荐系统中引入向量索引召回时,在线 serving 链路应该如何改造?
这道题考察的不是向量索引原理,而是把向量召回接入推荐在线 serving 后,链路、模块边界、延迟、降级、索引更新和实验评估应该怎样设计。回答要把它放在召回层讲清楚,并说明 query vector 如何生成、ANN 服务如何调用、候选如何回到后续粗排/精排。
同题还出现在 2 个公司岗位
RAG 处理 PDF 知识库时,如何设计切片、分页元数据和检索链路来减少答非所问?
这题考察 PDF 知识库 RAG 的端到端设计:要用结构化解析保留标题、页码和版面语义,按文档结构切 chunk 并带 page span metadata,通过召回、重排和上下文组装减少答非所问,并用 badcase 闭环持续修正切片与检索链路。
同公司岗位有 2 条面经记录
大模型推理中 Prefill/Decode(PD)分离部署为什么能提升处理速度?
这题考 LLM serving 的工作负载拆分,回答要讲清 prefill 和 decode 的差异、分离部署收益、KV cache 交接和适用边界。
金融场景下 Agent 超时、失败或中断时,如何设计安全重试和兜底?
这题考金融场景下 Agent 执行失败后的安全边界。答案必须围绕资金安全、幂等、状态机、确认、审计、对账和补偿展开,不能写成普通接口超时重试。
同公司岗位有 3 条面经记录
RAG 知识库如何做不停服更新,并保证检索结果一致性?
这题考 RAG 知识库不停服更新和一致性,不是 RAG vs SFT。回答要覆盖版本化索引、离线构建、影子验证、别名切换、缓存失效、权限元数据和回滚。
多 Agent 系统如何设计编排流程,并控制每个 Agent 的任务边界?
这题考多 Agent 编排流程和任务边界。回答重点是 coordinator、planner、executor、reviewer 的流程、契约、状态交接、冲突处理和可观测性,不是泛泛解释 Agent。
同题还出现在 1 个公司岗位
AI 语音交互产品如何定位 ASR、NLP、TTS 哪一环需要优化?
这题考 AI 语音交互产品的链路定位能力,答案要把 ASR、NLP、TTS 和交互策略分阶段评估,避免把所有问题都归因给模型质量。
机器发文产品创造力不足时,如何设计功能价值并区分人工创作?
这题考机器发文产品在创造力不足时如何定位功能价值,并说明机器写作与人工创作的差异、协作方式和评价指标。
MCP 的传输层有哪些方式,stdio 和 Streamable HTTP 分别适合什么场景?
这题考 MCP 的通信协议和传输层取舍,回答重点是 MCP 定义的是客户端、服务器和工具的上下文协议,传输上要区分本地 stdio、当前远程 Streamable HTTP,以及旧 HTTP+SSE 的历史或兼容语境。
Agent 自动生成 PPT 后,如何设计展示效果校验和自动迭代闭环?
这题考文档生成 Agent 的自验证闭环。回答要聚焦 PPT 渲染后的视觉效果、内容一致性、规则校验、多模态评估、人工审核和局部迭代,而不是泛泛说让模型再检查一遍。
AI 语音交互的技术流程是什么?
这题考的是语音交互链路的组件职责:从录音、唤醒、降噪和端点检测开始,经 ASR 转写、语义理解/对话管理、业务执行和回答生成,再到 TTS 播放、打断处理和日志反馈闭环。
同题还出现在 1 个公司岗位
Agent 的 thinking 阶段如何判断该调用工具还是直接回复,如何设计决策信号和安全约束?
这题考的是 Agent 运行时决策设计:候选人要能说明什么时候直接回答、什么时候调用工具、什么时候追问,以及如何用置信度、权限、安全和回归评估约束决策。
同题还出现在 1 个公司岗位
Agent 工具调用超时后如何设计降级方案?
这题考 Agent 工具调用可靠性设计,回答要围绕超时预算、重试、降级答案、异步继续、熔断和用户可见状态展开。
同题还出现在 1 个公司岗位
MCP、Function Call 和 A2A 在 Agent 系统中分别解决什么边界,如何协同?
这题考 Agent 系统的协议和责任边界。Function Call 解决模型到宿主工具调用意图的结构化表达,MCP 解决宿主和外部工具/资源服务之间的标准化连接,A2A 解决 Agent 与 Agent 之间的任务委托和协作。三者层级不同,不能混成同一个概念。
长上下文推理中 KV Cache 为什么可能被污染,如何做缓存隔离、清理和复用边界控制?
这题考的是大模型推理缓存的正确性与安全边界:KV Cache 本身是某个模型、某段 token、某套位置编码和注意力 mask 下的中间状态;一旦跨请求、跨会话、跨租户、跨模板版本或跨可变上下文错误复用,就可能产生答案串扰、隐私泄漏、事实陈旧或位置错乱。
Transformer 中 Pre-Norm 和 Post-Norm 有什么区别,为什么会影响深层模型训练稳定性?
这题考的是 Transformer 残差块里 LayerNorm 放置位置对梯度流和深层训练的影响:Pre-Norm 更利于深层稳定训练,Post-Norm 表达形式经典但更依赖 warmup、初始化和训练技巧,二者还有最终性能与稳定性的取舍。
同题还出现在 1 个公司岗位
大模型 Function Call 为什么会产生工具调用幻觉,工程上如何用 schema、权限、校验和反馈闭环降低误调用?
这题考 Function Call 的工程治理能力:工具调用幻觉不只靠 prompt 解决,还要靠工具契约、调用门禁、参数校验、执行反馈、回退策略和评测闭环共同降低。
同题还出现在 3 个公司岗位
大模型 RL 后训练中如何识别并缓解 reward hacking 和奖励坍缩?
这题考 RL 后训练的失效模式,回答重点是识别训练 reward 与真实质量背离,并用 reward 审计、约束、数据更新和独立评测缓解。
同题还出现在 2 个公司岗位
ReAct 的思考-行动-观察循环如何驱动 Agent 工具调用,和普通 CoT 有什么区别?
这题考的是候选人是否理解 ReAct 把模型推理和外部行动交织起来:模型不是一次性输出答案,而是在思考、选择工具、观察结果、继续推理的闭环中逐步完成任务;它和普通 CoT 的关键区别是能通过工具调用改变外部状态并用真实观察修正推理。