故障诊断与线上排查

共 17 题
#

1. /actuator/caches 与缓存诊断

A 它只能查看,不能清除
B 它只能查看 Redis 缓存
C 它与缓存无关
D 它用于查看缓存配置、执行清除操作,配合 metrics 可诊断缓存命中率与配置问题 ✓ 正确答案
#

2. /actuator/configprops 与配置属性诊断

A 它展示 @ConfigurationProperties 绑定的实际配置值,用于核对配置是否生效、排查绑定问题 ✓ 正确答案
B 它返回所有配置明文,无风险
C 它只能查看环境变量
D 它与配置无关
#

3. /actuator/threaddump 与 /actuator/heapdump 的运维价值

A 两者都只涉及 CPU
B threaddump 看线程栈与锁,heapdump 生成堆 dump 分析对象与泄漏,是线程与内存的两大诊断抓手 ✓ 正确答案
C threaddump 与线程无关
D heapdump 无法分析泄漏
#

4. /proc/sys/kernel/core_pattern 与 JVM core dump

A core_pattern 与 JVM 崩溃无关
B core_pattern 定义 core 文件的生成位置与规则,JVM 崩溃时生成的 core 供 gdb 分析崩溃根因 ✓ 正确答案
C core 文件无法用于分析
D JVM 永不生成 core dump
#

5. OutOfMemoryError 后保留堆 dump 的 JVM 参数

A OOM 后无法保留 dump
B 该参数只在 JDK 8 有效
C HeapDumpPath 与 dump 无关
D HeapDumpOnOutOfMemoryError 在 OOM 时自动生成堆 dump,HeapDumpPath 指定位置,供 MAT 分析 ✓ 正确答案
#

6. Safepoint 偏差(Safepoint Bias)诊断

A Safepoint 偏差只影响启动
B 某线程长时间停留安全点区域会拖慢全局 Safepoint 停顿,可用 PrintSafepointStatistics/JFR 定位 ✓ 正确答案
C 无法诊断 Safepoint 偏差
D Safepoint 偏差与 GC 无关
#

7. CPU 飙高时 top -H 定位线程 + jstack 分析栈的完整流程

A 只需 jstack,无需 top
B 线程号无需转换即可匹配
C jstack 无法分析 CPU 高
D top 找进程、top -H 找线程、线程号转十六进制、jstack 抓栈分析,是完整流程 ✓ 正确答案
#

8. jcmd <pid> GC.heap_dump 的堆 dump 与 MAT 分析

A MAT 无法分析泄漏
B 两者只能看 CPU
C jcmd GC.heap_dump 生成堆 dump,MAT 用支配树与 GC Roots 路径分析泄漏 ✓ 正确答案
D jcmd 无法生成堆 dump
#

9. jstack 线程 dump 的分析方法(死锁、阻塞、热点)

A 死锁会标注、阻塞看状态与锁、热点配 CPU 匹配,多次取样可区分问题 ✓ 正确答案
B jstack 只能看单线程
C 死锁无法检测
D 阻塞状态与锁无关
#

10. 堆外内存泄漏(NMT/直接内存/Netty)排查路径,Native Memory Tracking 的启用与 diff 分析

A NMT 只能看堆
B 启用 NMT、建立 baseline、用 summary.diff 对比增长类别,结合 Netty 泄漏检测定位 DirectBuffer 泄漏 ✓ 正确答案
C 堆外泄漏无法排查
D Netty 不会泄漏堆外内存
#

11. JVM 故障排查工具链(jps/jstack/jmap/jstat/jcmd/jhat/jfr)

A jps 找进程、jstack 看线程、jstat 看 GC、jcmd 多功能、jfr 深度剖析,按需组合 ✓ 正确答案
B jhat 是真相,MAT 已过时
C jps 无法列进程
D jstack 用于看堆
#

12. jcmd <pid> VM.command_line 与启动参数核查

A 它查看进程启动命令行,配合 VM.flags 可核查参数是否生效或被覆盖 ✓ 正确答案
B 它只能看 GC
C 它无法查看 classpath
D 启动参数无法核查
#

13. jcmd <pid> VM.flags 与 VM.system_properties

A 两者都看线程
B 系统属性无法查看
C VM.flags 无法查看默认值
D VM.flags 查看最终生效的 JVM 标志,VM.system_properties 查看系统属性,用于核查配置状态 ✓ 正确答案
#

14. jmap -heap 与 jmap -histo 的内存分析

A -heap 看堆结构与使用,-histo 看对象直方图定位大对象,是快速内存分析手段 ✓ 正确答案
B -histo 无法看对象
C 两者都只输出线程
D -heap 与 -histo 完全相同
#

15. Arthas 在线诊断常用命令(watch/trace/tt/stack)的方法入参与返回值捕获

A watch 无法看返回值
B watch 看入参/返回值/异常,trace 看耗时,tt 回放快照,stack 看调用栈,无需改代码即可在线诊断 ✓ 正确答案
C stack 用于抓堆 dump
D tt 只能看 CPU
#

16. Arthas 的 ognl 表达式在动态修改方法参数与热更新中的应用边界

A ognl 无任何限制
B ognl 可永久修改代码
C ognl 可运行时改对象状态与方法参数,但改不了字节码逻辑(需 redefine),且进程内临时、有安全与结构限制 ✓ 正确答案
D ognl 用于生产长期热更新且无风险
#

17. JDK 26 故障诊断工具的演进全景

A 诊断工具被移除
B 演进方向是更统一与可观测:JFR 增强、jcmd 统一入口、统一日志与官方字节码 API,减少碎片化 ✓ 正确答案
C 只能使用 jstack
D JFR 事件无法流式输出